Android_问卷调查

    这个是一个简单的问卷调查,对于我这样的初学者可能会绞尽脑汁想尽办法,去实现一个看起来特别简单的功能,我这个是用Intent传参的办法,来实现将前边的调查来进行统计,并记录,之后将这些信息显示到最后一个界面,我只做了两个题目的调查,再多个题目也是这样同样的方法来写,对于我来说无任何意义。

    第一个布局文件:

  1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  2     xmlns:tools="http://schemas.android.com/tools"
  3     android:id="@+id/LinearLayout1"
  4     android:layout_width="match_parent"
  5     android:layout_height="match_parent"
  6     android:layout_marginTop="12dp"
  7     android:orientation="vertical"
  8     android:paddingBottom="@dimen/activity_vertical_margin"
  9     android:paddingLeft="@dimen/activity_horizontal_margin"
 10     android:paddingRight="@dimen/activity_horizontal_margin"
 11     android:paddingTop="@dimen/activity_vertical_margin"
 12     tools:context=".MainActivity" >
 13 
 14     <LinearLayout
 15         android:layout_width="wrap_content"
 16         android:layout_height="wrap_content"
 17         android:layout_gravity="center"
 18         android:layout_margin="12dp"
 19         android:gravity="center"
 20         android:orientation="vertical" >
 21 
 22         <TextView
 23             android:id="@+id/textView1"
 24             android:layout_width="wrap_content"
 25             android:layout_height="wrap_content"
 26             android:layout_gravity="center_horizontal"
 27             android:layout_marginTop="25dp"
 28             android:text="关于APP图标的调查问卷"
 29             android:textSize="22sp" />
 30 
 31     </LinearLayout>
 32 
 33     <LinearLayout
 34         android:layout_width="wrap_content"
 35         android:layout_height="wrap_content"
 36         android:layout_gravity="center"
 37         android:layout_marginTop="20dp"
 38         android:orientation="vertical" >
 39 
 40         <TextView
 41             android:id="@+id/textView2"
 42             android:layout_width="wrap_content"
 43             android:layout_height="wrap_content"
 44             android:layout_marginTop="18dp"
 45             android:text="1.请根据实际来回答问题。"
 46             android:textSize="18dp" />
 47 
 48         <TextView
 49             android:id="@+id/textView3"
 50             android:layout_width="wrap_content"
 51             android:layout_height="wrap_content"
 52             android:layout_marginTop="18dp"
 53             android:text="2.此问卷为不记名问卷。"
 54             android:textSize="18dp" />
 55 
 56         <TextView
 57             android:id="@+id/textView4"
 58             android:layout_width="wrap_content"
 59             android:layout_height="wrap_content"
 60             android:layout_marginTop="18dp"
 61             android:text="3.感谢您对此问卷的支持。"
 62             android:textSize="18dp" />
 63 
 64     </LinearLayout>
 65 
 66     <TextView
 67         android:id="@+id/textView5"
 68         android:layout_width="wrap_content"
 69         android:layout_height="wrap_content"
 70         android:layout_gravity="center"
 71         android:layout_marginTop="50dp"
 72         android:text="请选择是否开始"
 73         android:textSize="16sp" />
 74 
 75     <LinearLayout
 76         android:layout_width="229dp"
 77         android:layout_height="wrap_content"
 78         android:layout_gravity="center"
 79         android:layout_marginTop="20dp" >
 80 
 81         <Button     
 82             android:id="@+id/btnStart"
 83             android:layout_width="wrap_content"
 84             android:layout_height="wrap_content"
 85             android:layout_weight="0.50"
 86             android:onClick="startApp"
 87             android:text="开 始" />
 88 
 89         <Button
 90             android:id="@+id/btnEnd"
 91             android:layout_width="wrap_content"
 92             android:layout_height="wrap_content"
 93             android:layout_marginLeft="30dp"
 94             android:layout_weight="0.50"
 95             android:onClick="endApp"
 96             android:text="退 出" />
 97 
 98     </LinearLayout>
 99 
100 </LinearLayout>

     对应的Java文件

 1 package com.yulei.app1;
 2 
 3 import android.os.Bundle;
 4 import android.app.Activity;
 5 import android.app.AlertDialog;
 6 import android.content.DialogInterface;
 7 import android.content.DialogInterface.OnClickListener;
 8 import android.content.Intent;
 9 import android.view.Menu;
10 import android.view.View;
11 
12 public class MainActivity extends Activity {
13 
14     @Override
15     protected void onCreate(Bundle savedInstanceState) {
16         super.onCreate(savedInstanceState);
17         setContentView(R.layout.activity_main);
18     }
19 
20     @Override
21     public boolean onCreateOptionsMenu(Menu menu) {
22         // Inflate the menu; this adds items to the action bar if it is present.
23         getMenuInflater().inflate(R.menu.main, menu);
24         return true;
25     }
26     
27     //开始调查
28     public void startApp(View v)
29     {
30         new AlertDialog.Builder(this)
31         .setTitle("确认信息")
32         .setMessage("准备好开始了吗?")
33         .setPositiveButton("否", null)
34         .setNegativeButton("是", new OnClickListener() {
35             
36             @Override
37             public void onClick(DialogInterface arg0, int arg1) {
38                 // TODO Auto-generated method stub
39                 //开始按钮事件
40                 Intent i = new Intent(MainActivity.this , page1.class);
41                 //启动
42                 startActivity(i); 
43             }
44         })
45         .show();       
46     }
47     
48     //退出程序
49     public void endApp(View v)
50     {
51         new AlertDialog.Builder(this)
52         .setTitle("提示信息")
53         .setMessage("确定退出吗?")
54         .setPositiveButton("否", null)
55         .setNegativeButton("是", new OnClickListener() {
56             
57             @Override
58             public void onClick(DialogInterface arg0, int arg1) {
59                 // TODO Auto-generated method stub
60                 System.exit(0);
61             }
62         })
63         .show();
64     }
65 
66 }

     第一个page1:

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 3     android:layout_width="match_parent"
 4     android:layout_height="match_parent"
 5     android:orientation="vertical" >
 6 
 7     <TextView
 8         android:id="@+id/textView1"
 9         android:layout_width="wrap_content"
10         android:layout_height="wrap_content"
11         android:layout_gravity="center"
12         android:layout_marginTop="40dp"
13         android:text="问卷调查"
14         android:textSize="24dp" />
15 
16     <LinearLayout
17         android:layout_width="match_parent"
18         android:layout_height="wrap_content"
19         android:layout_marginTop="35dp"
20         android:orientation="vertical" >
21 
22         <TextView
23             android:id="@+id/textView2"
24             android:layout_width="188dp"
25             android:layout_height="wrap_content"
26             android:layout_gravity="center"
27             android:layout_marginTop="16dp"
28             android:text="1.您的职业为 ?"
29             android:textSize="20dp" />
30 
31         <RadioGroup
32             android:id="@+id/radioGroup1"
33             android:layout_width="184dp"
34             android:layout_height="wrap_content"
35             android:layout_gravity="center"
36             android:layout_marginTop="24dp" >
37 
38             <RadioButton
39                 android:id="@+id/boy"
40                 android:layout_width="wrap_content"
41                 android:layout_height="wrap_content"
42                 android:checked="false"
43                 android:text=" 学生党" />
44 
45             <RadioButton
46                 android:id="@+id/girl"
47                 android:layout_width="wrap_content"
48                 android:layout_height="wrap_content"
49                 android:layout_marginTop="8dp"
50                 android:text=" 上班族" />
51 
52             <RadioButton
53                 android:id="@+id/other"
54                 android:layout_width="wrap_content"
55                 android:layout_height="wrap_content"
56                 android:layout_marginTop="8dp"
57                 android:text=" 其他的" />
58 
59         </RadioGroup>
60     </LinearLayout>
61 
62     <LinearLayout
63         android:layout_width="match_parent"
64         android:layout_height="wrap_content"
65         android:layout_weight="0.21"
66         android:orientation="vertical" >
67 
68         <Button
69             android:id="@+id/btnTijiao"
70             android:layout_width="123dp"
71             android:layout_height="wrap_content"
72             android:layout_gravity="center"
73             android:layout_marginTop="50dp"
74             android:onClick="onClickTijiao1"
75             android:text="提 交" />
76 
77     </LinearLayout>
78 
79 </LinearLayout>

    对应Java文件:

 1 package com.yulei.app1;
 2 
 3 import android.app.Activity;
 4 import android.content.Intent;
 5 import android.os.Bundle;
 6 import android.view.ContextMenu;
 7 import android.view.ContextMenu.ContextMenuInfo;
 8 import android.view.View;
 9 import android.widget.RadioButton;
10 import android.widget.RadioGroup;
11 import android.widget.TextView;
12 
13 public class page1 extends Activity {
14     
15      public RadioGroup rg;
16      public RadioButton mRadio1, mRadio2,mRadio3;
17      String []info=new String [3];
18      TextView tv1;
19 
20     @Override
21     protected void onCreate(Bundle savedInstanceState) {
22         // TODO Auto-generated method stub
23         super.onCreate(savedInstanceState);
24         setContentView(R.layout.help);
25         rg = (RadioGroup) findViewById(R.id.radioGroup1);
26         mRadio1 = (RadioButton) findViewById(R.id.boy);
27         mRadio2 = (RadioButton) findViewById(R.id.girl);
28         mRadio3 = (RadioButton) findViewById(R.id.other);
29         rg.setOnCheckedChangeListener(radiogpchange);
30         tv1=(TextView)findViewById(R.id.textView1);
31     }
32 
33     @Override
34     public void onCreateContextMenu(ContextMenu menu, View v,
35             ContextMenuInfo menuInfo) {
36         // TODO Auto-generated method stub
37         super.onCreateContextMenu(menu, v, menuInfo);
38     }
39     
40     private RadioGroup.OnCheckedChangeListener radiogpchange = new RadioGroup.OnCheckedChangeListener() 
41     {
42         @Override
43         public void onCheckedChanged(RadioGroup group, int checkedId) 
44         {
45             if (checkedId == mRadio1.getId()) 
46             {
47                 info[0]="学生党";
48             }
49             else if (checkedId == mRadio2.getId())
50             {
51                 info[0]="上班族";
52             }
53             else if (checkedId == mRadio3.getId())
54             {
55                 info[0]="其他的";
56             }
57         }
58     };
59     
60     
61     public void onClickTijiao1(View v)
62     {
63         Intent intent=new Intent();
64         intent.setClass(page1.this,page2.class);
65         intent.putExtra("info0", info[0]);     //put传到另一个界面
66         //启动
67         startActivity(intent);
68     }
69 }

   .

   .

   .

    第三个page3界面:

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 3     android:layout_width="match_parent"
 4     android:layout_height="match_parent"
 5     android:orientation="vertical" >
 6 
 7     <LinearLayout
 8         android:layout_width="match_parent"
 9         android:layout_height="wrap_content"
10         android:orientation="vertical" >
11     </LinearLayout>
12 
13     <TextView
14         android:id="@+id/tvss"
15         android:layout_width="wrap_content"
16         android:layout_height="wrap_content"
17         android:layout_gravity="center"
18         android:layout_marginTop="50dp"
19         android:text="调查结果"
20         android:textSize="20dp" />
21 
22     <TextView
23         android:id="@+id/textView1"
24         android:layout_width="wrap_content"
25         android:layout_height="wrap_content"
26         android:layout_gravity="center"
27         android:layout_marginTop="20dp"
28         android:text="1.你的职业为:"
29         android:textSize="18sp" />
30 
31     <TextView
32         android:id="@+id/textView2"
33         android:layout_width="wrap_content"
34         android:layout_height="wrap_content"
35         android:layout_gravity="center"
36         android:layout_marginTop="20dp"
37         android:text="2.常用 APP为:"
38         android:textSize="18sp" />
39 
40     <Button
41         android:id="@+id/button1"
42         android:layout_width="133dp"
43         android:layout_height="wrap_content"
44         android:layout_gravity="center"
45         android:layout_marginTop="30dp"
46         android:onClick="onClickTijiao3"
47         android:text="确 认 提 交" />
48 
49 </LinearLayout>

    对应的Java文件:

 1 package com.yulei.app1;
 2 
 3 import android.app.Activity;
 4 import android.app.AlertDialog;
 5 import android.content.DialogInterface;
 6 import android.content.DialogInterface.OnClickListener;
 7 import android.content.Intent;
 8 import android.os.Bundle;
 9 import android.view.ContextMenu;
10 import android.view.ContextMenu.ContextMenuInfo;
11 import android.view.View;
12 import android.widget.RadioButton;
13 import android.widget.RadioGroup;
14 import android.widget.TextView;
15 
16 public class page3 extends Activity {
17     
18      public RadioGroup rg;
19      public RadioButton mRadio1, mRadio2,mRadio3;
20      String []info=new String [3];
21      TextView tv1,tv2;
22      
23      
24 
25     @Override
26     protected void onCreate(Bundle savedInstanceState) {
27         // TODO Auto-generated method stub
28         super.onCreate(savedInstanceState);
29         setContentView(R.layout.help3);
30         tv1=(TextView)findViewById(R.id.textView1);
31         tv2=(TextView)findViewById(R.id.textView2);
32         
33     }
34 
35     @Override
36     public void onCreateContextMenu(ContextMenu menu, View v,
37             ContextMenuInfo menuInfo) {
38         // TODO Auto-generated method stub
39         super.onCreateContextMenu(menu, v, menuInfo);
40     }
41     
42 
43     
44     public void onClickTijiao3(View v)
45     {
46         Intent intent = getIntent();
47         String nn=intent.getStringExtra("info1");
48         String mm=intent.getStringExtra("info0");
49         tv1.setText("1.你的职业为:"+mm);
50         tv2.setText("2.常用 APP为:"+nn);
51         new AlertDialog.Builder(this)
52         .setTitle("提示信息")
53         .setMessage("信息已提交,点击关闭应用")
54         .setPositiveButton("退 出", null)
55 
56       //.setNegativeButton("是", null)
57         .show(); 
58         
59     }
60 }

    在这里不将代码全部贴出来了,运行效果如下所示:

    这个程序只是实现了基本的功能,用到的是安卓里边的单击按钮事件以及Activity之间传值。

    App下载地址:点击此链接下载此应用

原文地址:https://www.cnblogs.com/cnyulei/p/5365878.html