Android学习笔记(二)

Android基本控件高级

ListView  ArrayAdapter和SimpleAdapter

ListView中的setAdapter() 方法  ListView通过适配器来显示内容的,适配器有两种 一种是ArrayAdapter 另一种是SimpleAdapter

ArrayAdapter是解析一个数组,叫这个数组呈现出ListView效果,注意最后用setConnentView方法将这ListView加入到手机界面进行显示,而Activity本身不用set ConnentView加载本来的main.xml 文件

SimpleAdapter是解析一个List中含有map的集合,这个结构相比一个数组复杂的多,SimpleAdapter解析这个复杂的结构会叫我们可以给客户呈现结构更完美的ListView。

四种Adapter

ArrayAdapter 简单的文字列表

simpleAdapter 自己定义一个丰富的列表

SimpleCursorAdapter可以从数据库中读取数据加到列表上

BaseAdapter可以在列表上加处理事件

实例一:使用ArrayAdapter 作为Listview 适配

MainActivity

package com.example.gdlistviewarrayadapter;

public class MainActivity extends Activity {

private  ListView listview;

private  String data[] ={"周杰伦","佟大为","李小双","文章","范冰冰"};

         @Override

         protected void onCreate(Bundle savedInstanceState) {

                   super.onCreate(savedInstanceState);

                   listview=new ListView(this);

                   // 实例化ListView组件

                   listview.setAdapter(

                                     new ArrayAdapter<String>

                                     (this, android.R.layout.simple_list_item_1, this.data));

                   /*

                    * android.R.layout.simple_list_item_1  是调用系统提供的Id

                    * **/

                   this.setContentView(listview);

                   //设置这个布局

                  

         }

        

}

实例二 SimpleAdapter与List<Map<String ,String >>

MainActivity代码

package com.example.gdlistviewarrayadapter;

public class MainActivity extends Activity {

private  ListView listview;

private  String data[][] ={{"姓名","周杰伦"},{"姓名","郭庆雨"}};

private SimpleAdapter  sip;

private List<Map<String ,String>> list = new ArrayList<Map<String,String>>();

   @Override

   protected void onCreate(Bundle savedInstanceState) {

      super.onCreate(savedInstanceState);

      this.setContentView(R.layout.activity_main);

   listview=(ListView)findViewById(R.id.list);

  

   for(int  i=0;i<data.length;i++){

      Map<String ,String > map= new HashMap<String, String>();

        map.put("A", data[i][0]);

        map.put("B", data[i][1]);

        /*

         * map 里面的Key值是随意定义的 只要是和下面的

         * new SimpleAdapter(this,

         * list, R.layout.datalist,

         *  new String[] {"A","B"}, new int[]{R.id._id,R.id.name});

         *  中的 new String[]{}数组里面的数据一样就好

         * **/

        list.add(map);

   }

   sip=

new SimpleAdapter(this,

      list,

      R.layout.datalist, //把模板布局夹到SimpleAdapter中去

  

      new String[] {"A","B"}, new int[]{R.id._id,R.id.name});

   /*

    * new SimpleAdapter(this,

    * list, R.layout.datalist,

    * new String[] {"A","B"}, new int[]{R.id._id,R.id.name});

    *中的new String[]{"A","B"}和 new  int []{R.id._id,R.id.name} 是把 我们的Map中

    *那个key值与我们模板(datalist.xml)布局(layout)中相应的组件布局一一对应

    * **/

  

   listview.setAdapter(this.sip);

   /*new SimpleAdapter(this,

    * list, R.layout.datalist,

    * new String[] {"A","B"}, new int[]{R.id._id,R.id.name});

    *中的   R.layout.datalist, 是把模板布局加到SimpleAdapter中去

    * listview.setAdapter(this.sip)是把SimpleAdapter添加到ListView 中去

    * ListView 又在显示布局(main.xml)中这样模板布局(layout)datalist.xml也同时

    * 被加到显示布局main.xml中去

    * **/

   }

}

activity_main.xml代码

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

    android:layout_width="fill_parent"

    android:layout_height="fill_parent"

    android:orientation="vertical" >

    <!-- 本布局用于显示布局 -->

    <TextView

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:text="listView"

        />

    <!-- 用于显示题目 -->

<ListView

    android:id="@+id/list"

    android:layout_width="wrap_content"

    android:layout_height="wrap_content"

     />

<!-- 本ListView用于加载模板布局datalist.xml -->

</LinearLayout>

datalist.xml 代码

<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"

    android:layout_width="fill_parent"

    android:layout_height="wrap_content" >

    <!-- 注意 用于模板的Layout的高度不能设置沾满整个全屏

    如果沾满了用于显示的Layout将不起作用 -->

    <TableRow >

       

        <TextView

          android:id="@+id/_id"

          android:layout_width="wrap_content"

          android:layout_height="wrap_content"

           

             />

        <TextView

            android:id="@+id/name"

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

             />

    </TableRow>

</TableLayout>

ListActivity

对话框Dialog和Dialog.Builder

Dialog extends Object的子类AlertDialog和CharacterPickerDialog

AlertDialog extends Dialog的子类DataPickerDialog,ProgressDialog和TimePickerDialog

AlertDialog.Builder不是AlertDialog的子类而是AlertDialog的嵌套类,

Public  void class  AlertDialog extends Dialog{

Pubic static class AlertDialog.Builder extends Object{

}

}

在图形界面中,对话框也是人机交互的一种重要形式,程序可以通话对话框对用户进行一些信息的提示

,而用户也可以通过对话框和程序进行一些简单的交互操作,Dialog 可以有一个按钮或是多个按钮或是列表选项,进行人家交互。

在android的开发中,所有的对话框都是从android.app.Dialog 类继承而来,此类的继承机构如下

Java.Long.Object

          Android.app.Dialog

可以看出,此类直接继承自Object类,与View类没有任何继承关系。

但是如果要想实例化,AlertDialog类,往往要依靠其内部类,AlertDialog.Builder完成,在AlertDialog.Builder

类中定义的常用方法如下表

Dialog类定义的常用方法

NO

方      法

类   型

描        述

1

Public void setTitle(CharSequence title)

普通

设置对话框的显示标题

2

Public void setTitle(int title Id)

普通

设置对话框的显示标题,内容为资源文件指定

3

Public void show()

普通

显示对话框

4

Public  void hide()

普通

隐藏对话框

5

Public  Boolean isShowing()

普通

判断对话框是否显示

6

Public  void setContentView()

普通

设置View组件

7

Public void dismiss()

普通

隐藏对话框

8

9

10

AlertDialog.Builder

NO

方  法

类型

描述

1

Public  AlertDialog.Buider(Context  context)

构造

创建AlertDialog.Builder对象

2

Public AlertDialog.Builder setPositiveButton(int textId,DialogInterFace.OnClickListener listener)

普通

为对话框添加一个确定按钮,显示内容有资源文件制定,并设置监听操作

3

Public AlertDialog.Builder setNegativeButton(CharSequence text,DialogInterface.OnClickListener listener)

普通

为对话框设置一个取消按钮,显示内容有资源文件制定,并设置监听操作

4

Public  AlertDialog.Builder set NeutralButton(CharSequence text,DialogInterface.OnclickListener listener)

普通

为对话框设置一个普通按钮 ,并设置监听

5

Public AlertDialog.Builder setMessage( int messageId)

普通

设置显示信息(内容由资源ID引用)

6

Public AlertDialog.Builder setMessage(CharSequence)

普通

设置显示信息(内容由字符串直接组成)

7

Public AlertDialog.Builder setItems(

Int textId,DialogInterface.OnClickListener

listener

)

普通

将信息内容设置为列表项,列表项的内容由 String数组组成,

同时设置监听

8

Public AlertDialog.Builder setItems(

CharSequence[] items,DialogInterface.OnClickListener listener

)

普通

将信息设置为列表项,列表项由资源文件制定,同时设置监听

9

Public AlertDialog create()

普通

创建AlertDialog的实例

10

Public  AlertDialog setIcon(Drawable icon)

普通

设置显示图标

11

Public AlertDialog  setIcon(int iconId)

普通

设置要显示的图标的资源ID

案例一 :简单对话框提示信息

Activity_main.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

    xmlns:tools="http://schemas.android.com/tools"

    android:layout_width="match_parent"

    android:layout_height="match_parent"

    android:paddingBottom="@dimen/activity_vertical_margin"

    android:paddingLeft="@dimen/activity_horizontal_margin"

    android:paddingRight="@dimen/activity_horizontal_margin"

    android:paddingTop="@dimen/activity_vertical_margin"

    tools:context=".MainActivity" >

    <Button

        android:id="@+id/text"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_alignParentLeft="true"

        android:layout_alignParentTop="true"

        android:layout_marginLeft="104dp"

        android:layout_marginTop="146dp"

        android:text="Button" />

</RelativeLayout>

MainActivity

package com.example.alertdialogdemo;

import android.os.Bundle;

import android.app.Activity;

import android.app.AlertDialog;

import android.app.AlertDialog.Builder;

import android.app.Dialog;

import android.view.Menu;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

public class MainActivity extends Activity {

  private  Button  text=null;

         @Override

         protected void onCreate(Bundle savedInstanceState) {

                   super.onCreate(savedInstanceState);

                   setContentView(R.layout.activity_main);

                   text=(Button)findViewById(R.id.text);

                   text.setOnClickListener(new OnClickListener() {

                           

                            @Override

                            public void onClick(View v) {

                                     // TODO Auto-generated method stub

                            AlertDialog.Builder  builder = new AlertDialog.Builder(MainActivity.this);

                            builder.setTitle("对话框");

                            builder.setMessage("显示提示信息");

                            builder.setIcon(R.drawable.ic_launcher);

                            AlertDialog alertDialog= builder.create();

                            alertDialog.show();

                                    

                            }

                   });

         }

}

案例二:Dialog对话框上的按钮Button以及监听Listener

对话框Dialog可以设置按钮以及一些监听 来提示用户是否要退出程序,隐藏对话框,取消对话框,以及加上一些列表选项

NO

接  口  名  称

描  述

1

DialogInterface.OnClickListener

对话框单击事件处理

2

DialogInterface.OnCancelListener

对话框取消事件处理

3

DialogInterface.OnDismissListener

对话框隐藏事件处理

4

DialogInterface.OnkeyListener

对话框键盘事件处理

5

DialogInterface.OnMultiChoiceClickListener

对话框多选事件处理

6

DialogInter.OnShowListener

对话框显示事件处理

Activity_main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

    android:layout_width="fill_parent"

    android:layout_height="fill_parent"

    android:orientation="vertical" >

    <Button

        android:id="@+id/text"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:text="Button" />

</LinearLayout>

MainActivity

package com.example.alertdialogdemo;

import android.os.Bundle;

import android.app.Activity;

import android.app.AlertDialog;

import android.app.AlertDialog.Builder;

import android.app.Dialog;

import android.content.DialogInterface;

import android.view.Menu;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

public class MainActivity extends Activity {

  private  Button  text=null;

         @Override

         protected void onCreate(Bundle savedInstanceState) {

                   super.onCreate(savedInstanceState);

                   setContentView(R.layout.activity_main);

                   text=(Button)findViewById(R.id.text);

                   text.setOnClickListener(new OnClickListener() {

                           

                            @Override

                            public void onClick(View v) {

                                     // TODO Auto-generated method stub

                            AlertDialog.Builder  builder = new AlertDialog.Builder(MainActivity.this);

                            builder.setTitle("对话框");

                            builder.setMessage("显示提示信息");

                            builder.setIcon(R.drawable.ic_launcher);

                            builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {

                                     //添加一个确定按钮

                                     @Override

                                     public void onClick(DialogInterface dialog, int which) {

                                               // TODO Auto-generated method stub

                                               MainActivity.this.finish();

                                               //结束Activity

                                     }

                            } );

                            builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {

                                     // 设置取消按钮

                                     @Override

                                     public void onClick(DialogInterface dialog, int which) {

                                               // TODO Auto-generated method stub

                                              

                                     }

                            });

                            builder.setNeutralButton("普通按钮",new DialogInterface.OnClickListener() {

                                     //设置普通按钮

                                     @Override

                                     public void onClick(DialogInterface dialog, int which) {

                                               // TODO Auto-generated method stub

                                              

                                     }

                            });

                            AlertDialog alertDialog= builder.create();

                            alertDialog.show();

                                    

                            }

                   });

         }

}

案例三:Dialog对话框上的按钮Button以及Listener二

Activity_main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

    android:layout_width="fill_parent"

    android:layout_height="fill_parent"

    android:orientation="vertical" >

    <Button

        android:id="@+id/but"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:text="点击" />

</LinearLayout>

MainActivity

package com.example.dialoglinstenerdemo;

import android.os.Bundle;

import android.app.Activity;

import android.app.AlertDialog;

import android.content.DialogInterface;

import android.view.KeyEvent;

import android.view.Menu;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

public class MainActivity extends Activity {

private   Button  but=null;

         @Override

         protected void onCreate(Bundle savedInstanceState) {

                   super.onCreate(savedInstanceState);

                   setContentView(R.layout.activity_main);

         but=(Button)findViewById(R.id.but);

         but.setOnClickListener(new  DialogListener());

                  

         }

        

@Override

         public boolean onKeyDown(int keyCode, KeyEvent event) {

                   // TODO Auto-generated method stub

                   if(keyCode==event.KEYCODE_BACK){

                            MainActivity.this.exitDialog();

                   }

                   return false;

         }

class  DialogListener  implements  OnClickListener{

         @Override

         public void onClick(View v) {

                   // TODO Auto-generated method stub

         MainActivity.this.exitDialog();

         }

        

}

private  void  exitDialog(){

         AlertDialog.Builder  builder = new  AlertDialog.Builder(this);

                              builder.setIcon(R.drawable.ic_launcher);

                              builder.setTitle("程序退出");

                              builder.setMessage("你确定退出么?");

                              builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {

                                                                 @Override

                                                                 public void onClick(DialogInterface dialog, int which) {

                                                                           // TODO Auto-generated method stub

                                                                           MainActivity.this.finish();

                                                                 }

                                                        });

                              builder.setNegativeButton(R.string.negative,newDialogInterface.OnClickListener() {

                                                                 //此处引用String.xml文件下的R.string.negative的id

                                                                 @Override

                                                                 public void onClick(DialogInterface dialog, int which) {

                                                                           // TODO Auto-generated method stub

                                                                          

                                                                 }

                                                        });

                             builder.setNeutralButton("查看详情", new DialogInterface.OnClickListener() {

                                                                

                                                                 @Override

                                                                 public void onClick(DialogInterface dialog, int which) {

                                                                           // TODO Auto-generated method stub

                                                                          

                                                                 }

                                                        }) ;

                        AlertDialog  alertDialog = builder.create();

                                alertDialog.show();

}       

}

String.xml

<?xml version="1.0" encoding="utf-8"?>

<resources>

    <string name="app_name">Dialog案例</string>

    <string name="action_settings">Settings</string>

    <string name="negative">取消</string>

</resources>

案例四:Dialog列表选项setItems()

Activity_main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

    android:layout_width="fill_parent"

    android:layout_height="fill_parent"

    android:orientation="vertical" >

    <TextView

        android:id="@+id/show"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:textColor="#FF00FF"

       />

    <Button

        android:id="@+id/onlick"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:text="点击" />

</LinearLayout>

MainActivity

package com.example.dialogitemdemo;

import android.app.AlertDialog;

import android.app.Dialog;

import android.app.AlertDialog.Builder;

import android.content.DialogInterface;

import android.view.View;

import android.view.View.OnClickListener;

public class MainActivity extends Activity {

private  Button  but;

private  TextView  show;

private  String [] args= {"北京","上海","南京"};

         @Override

         protected void onCreate(Bundle savedInstanceState) {

                   super.onCreate(savedInstanceState);

                   setContentView(R.layout.activity_main);

                   show=(TextView)findViewById(R.id.show);

                   but=(Button)findViewById(R.id.onlick);

                   but.setOnClickListener(new DialogSetItemOnClicklistener());

                  

         }

class  DialogSetItemOnClicklistener implements OnClickListener{

         @Override

         public void onClick(View v) {

                   // TODO Auto-generated method stub

                   AlertDialog.Builder  builder = new AlertDialog.Builder(MainActivity.this);

                                       builder.setIcon(R.drawable.ic_launcher);

                                       builder.setTitle("你喜欢的城市");

                                       builder.setItems(args, new DialogInterface.OnClickListener() {

                                                                          

                                                                           @Override

                                                                           public void onClick(DialogInterface dialog, int which) {

                                                                                    // TODO Auto-generated method stub

                                                                                    MainActivity.this.show.setText("你喜欢的城市是:"+MainActivity.this.args[which]);

                                                                           }

                                                                 });

                                AlertDialog alert=  builder.create();

                                 alert.show();

         }

        

        

}

}

案例五:Dialog列表选项setItems()数据用资源文件配置

Activity_main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

    android:layout_width="fill_parent"

    android:layout_height="fill_parent"

android:orientation="vertical" >

 <TextView

        android:id="@+id/show"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:textColor="#FF00FF"

       />

    <Button

        android:id="@+id/onlick"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:text="点击" />

</LinearLayout>

MainActivity

package com.example.dialogitemdemo;

import android.os.Bundle;

import android.app.Activity;

import android.app.AlertDialog;

import android.content.DialogInterface;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

import android.widget.TextView;

public class MainActivity extends Activity {

private  Button  but;

private  TextView  show;

   @Override

   protected void onCreate(Bundle savedInstanceState) {

      super.onCreate(savedInstanceState);

      setContentView(R.layout.activity_main);

      show=(TextView)findViewById(R.id.show);

      but=(Button)findViewById(R.id.onlick);

      but.setOnClickListener(new DialogSetItemOnClicklistener());

     

   }

class  DialogSetItemOnClicklistener implements OnClickListener{

   @Override

   public void onClick(View v) {

      // TODO Auto-generated method stub

      AlertDialog.Builder  builder = new AlertDialog.Builder(MainActivity.this);

                          builder.setIcon(R.drawable.ic_launcher);

                          builder.setTitle("你喜欢的城市");

         builder.setItems(R.array.city, new DialogInterface.OnClickListener() {

                     

                      @Override

      public void onClick(DialogInterface dialog, int which) {

                         // TODO Auto-generated method stub

           MainActivity.this.show.setText("你喜欢的城市是:"+

           MainActivity.this.getResources().

           getStringArray(R.array.city)[which]);

           //获得资源文件下的StringArray中的R.array.city中的哪一个选项

                      }

                 });

         builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {

        @Override

        public void onClick(DialogInterface dialog, int which) {

           // TODO Auto-generated method stub

           }});

                AlertDialog alert=  builder.create();

                  alert.show();

   }}}

Res/values/city.xml

<resources>

        <string-array name="city" >

            <item >广州</item>

            <item >深圳</item>

            <item >香港</item>

            <item >澳门</item>

            <item >台湾</item>

        </string-array>

  </resources>

案例六 :使用单选框setSingleChoiceItems定义对话框内容

MainActivity

package com.example.dialogsetsinglechoiceitems;

import android.os.Bundle;

import android.app.Activity;

import android.app.AlertDialog;

import android.content.DialogInterface;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

import android.widget.TextView;

public class MainActivity extends Activity {

private Button mybut;

private TextView  show;

private  String []  fruitData ={"苹果","香蕉","西瓜"};

private  int  chNum=0;

   @Override

   protected void onCreate(Bundle savedInstanceState) {

      super.onCreate(savedInstanceState);

      setContentView(R.layout.activity_main);

      mybut=(Button)findViewById(R.id.mybut);

      show=(TextView)findViewById(R.id.show);

      mybut.setOnClickListener(new SetSingleChoice());

   }

   class  SetSingleChoice implements  OnClickListener{

      @Override

      public void onClick(View arg0) {

        // TODO Auto-generated method stub

        AlertDialog.Builder  builder = new AlertDialog.Builder(MainActivity.this);

          builder.setIcon(R.drawable.ic_launcher);

          builder.setTitle("选择你喜欢的水果");

          builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {

          

           @Override

           public void onClick(DialogInterface dialog, int which) {

              // TODO Auto-generated method stub

              MainActivity.this.show.setText("你喜欢的水果是:"+MainActivity.this.fruitData[chNum]);

           }

        });

          builder.setNegativeButton("取消"new DialogInterface.OnClickListener() {

          

           @Override

           public void onClick(DialogInterface dialog, int which) {

              // TODO Auto-generated method stub

             

           }

        });

         builder.setSingleChoiceItems(MainActivity.this.fruitData, 0, new  DialogInterface.OnClickListener() {

   /*

   * setSingleChoiceItems(

            

 * MainActivity.this.fruitData,-------> 选项数据源 可以通过配置获得

*                           0,------------> 默认选中项位置

*new  DialogInterface.OnClickListener()---> 选项的监听

* )

 * **/           @Override

           public void onClick(DialogInterface dialog, int which) {

              // TODO Auto-generated method stub

              MainActivity.this.show.setText(MainActivity.this.fruitData[which]);

              MainActivity.this.chNum=which;

             //修改选中选

           }

        });

      AlertDialog  alertDialog=  builder.create();

         alertDialog.show();

      }

   }

}

Activity_main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

    android:layout_width="fill_parent"

    android:layout_height="fill_parent"

    android:orientation="vertical" >

    <TextView

        android:id="@+id/show"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:text="" />

    <Button

        android:id="@+id/mybut"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:text="选择你喜欢的水果" />

</LinearLayout>

案例七 :使用复选框setMultiChoiceItems定义对话框内容

MainActivity

package com.example.alertdialogsetmultichoiceiteme;

import android.os.Bundle;

import android.app.Activity;

import android.app.AlertDialog;

import android.content.DialogInterface;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

import android.widget.TextView;

public class MainActivity extends Activity {

 private  Button  but;

 private   TextView  show;

 private String [] args={"大学","中庸","论语"};

 private boolean chdata[]= new boolean[]{true,true,true};

   @Override

   protected void onCreate(Bundle savedInstanceState) {

      super.onCreate(savedInstanceState);

      setContentView(R.layout.activity_main);

      show=(TextView)findViewById(R.id.show);

      but=(Button)findViewById(R.id.but);

      but.setOnClickListener(new DialogMultiChoicIteme());

   }

   class  DialogMultiChoicIteme  implements OnClickListener{

      @Override

      public void onClick(View v) {

        // TODO Auto-generated method stub

 AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);

               builder.setIcon(R.drawable.ic_launcher);

               builder.setTitle("你喜欢的书籍");

               builder.setPositiveButton("确定",

                    new DialogInterface.OnClickListener() {

             

              @Override

              public void onClick(DialogInterface dialog, int which) {

                 // TODO Auto-generated method stub

                 MainActivity.this.show.append(MainActivity.this.args[0]+","

                           +MainActivity.this.args[1]+","+

                      MainActivity.this.args[2]

                      );

              }

           });

           builder.setNegativeButton("取消",

           new DialogInterface.OnClickListener() {

             

              @Override

              public void onClick(DialogInterface dialog, int which) {

                 // TODO Auto-generated method stub

                

              }

           });

builder.setMultiChoiceItems(

                    MainActivity.this.args,

                    MainActivity.this.chdata ,

                    new DialogInterface.OnMultiChoiceClickListener() {

             

              @Override

        public void onClick(DialogInterface dialog,

                    int which,

                    boolean isChecked) {

                 // TODO Auto-generated method stub

           for (int i = 0; i < MainActivity.this.args.length; i++) {

                    if(i==which&&isChecked){

        MainActivity.this.show.append(MainActivity.this.args[i]+",");

                    }

                   

                 }

              }

           });

               AlertDialog alertDialog=  builder.create();

               alertDialog.show();

      } 

   } 

}

Activity_main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

    android:layout_width="fill_parent"

    android:layout_height="fill_parent"

    android:orientation="vertical" >

    <TextView

        android:id="@+id/show"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:text="" />

    <Button

        android:id="@+id/but"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:text="选择你喜欢的数据" />

</LinearLayout>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

babyai997

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值