安卓学习-界面-ui-对话框

1.最简单的消息提示

 Button btn=(Button)findViewById(R.id.button1);
    btn.setOnClickListener(new OnClickListener() {
        public void onClick(View v) {
            AlertDialog d=new AlertDialog.Builder(MainActivity.this)
            .setTitle("这是标题")
        //图标
        .setIcon(R.drawable.ic_launcher)
        .setMessage("消息提示")
        .setNegativeButton("左按钮", null)
        .setNeutralButton("中按钮", null)
        .setPositiveButton("右按钮", null)
        .create();
        d.show();
    }
});

2.简单列表窗口

public class MainActivity extends Activity {

    String[] items=new String[]{"苹果","鸭梨","桔子","香蕉"};

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

         Button btn=(Button)findViewById(R.id.button1);
            btn.setOnClickListener(new OnClickListener() {
                public void onClick(View v) {
                    AlertDialog d=new AlertDialog.Builder(MainActivity.this)
                    .setTitle("水果列表")
                    //图标
                    .setIcon(R.drawable.ic_launcher)
                    .setItems(items, new DialogInterface.OnClickListener() {
                            public void onClick(DialogInterface dialog, int which) {
                            Toast.makeText(MainActivity.this, items[which], Toast.LENGTH_SHORT).show();
                        }
                    })
                    .setNeutralButton("我知道了", new DialogInterface.OnClickListener() {

                        public void onClick(DialogInterface dialog, int which) {
                            Toast.makeText(MainActivity.this,"我知道了", Toast.LENGTH_SHORT).show();
                        }
                    })
                    .create();
                d.show();
            }
        });
    }
}

3.单选列表框

public class MainActivity extends Activity {

    int selIndex=0;
    String[] items=new String[]{"苹果","鸭梨","桔子","香蕉"};

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

         Button btn=(Button)findViewById(R.id.button1);
            btn.setOnClickListener(new OnClickListener() {
                public void onClick(View v) {
                    AlertDialog d=new AlertDialog.Builder(MainActivity.this)
                    .setTitle("请选择")
                    //图标
                    .setIcon(R.drawable.ic_launcher)
                    .setSingleChoiceItems(items, selIndex, new DialogInterface.OnClickListener() {
                        public void onClick(DialogInterface dialog, int which) {
                            selIndex=which;
                            Toast.makeText(MainActivity.this, "你选择的是:"+items[which], Toast.LENGTH_SHORT).show();
                        }
                    })
                    .setNeutralButton("确定", new DialogInterface.OnClickListener() {
                        public void onClick(DialogInterface dialog, int which) {
                            Toast.makeText(MainActivity.this,"确定,选择的的是"+items[selIndex], Toast.LENGTH_SHORT).show();
                        }
                    })
                    .setPositiveButton("取消", new DialogInterface.OnClickListener() {
                        public void onClick(DialogInterface dialog, int which) {
                            Toast.makeText(MainActivity.this,"取消", Toast.LENGTH_SHORT).show();
                        }
                    })
                    .create();
                d.show();
            }
        });
    }
}

4.多选

public class MainActivity extends Activity {

    int selIndex=0;
    String[] items=new String[]{"苹果","鸭梨","桔子","香蕉"};
    boolean[] selItems=new boolean[]{false,false,true,true};

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

         Button btn=(Button)findViewById(R.id.button1);
            btn.setOnClickListener(new OnClickListener() {
                public void onClick(View v) {
                    AlertDialog d=new AlertDialog.Builder(MainActivity.this)
                    .setTitle("请选择")
                    //图标
                    .setIcon(R.drawable.ic_launcher)
                    .setMultiChoiceItems(items,selItems, new DialogInterface.OnMultiChoiceClickListener() {
                        public void onClick(DialogInterface dialog, int which, boolean isChecked) {
                            if(isChecked){
                                Toast.makeText(MainActivity.this, "你选择了:"+items[which], Toast.LENGTH_SHORT).show();
                                selItems[which]=isChecked;
                            }
                        }
                    })
                    .setNeutralButton("确定", new DialogInterface.OnClickListener() {
                        public void onClick(DialogInterface dialog, int which) {
                            String str="";
                            for(int i=0;i<selItems.length;i++){
                                if(selItems[i]){
                                    str=str+items[i]+",";
                                }
                            }
                            Toast.makeText(MainActivity.this,"确定,选择的的是"+str, Toast.LENGTH_SHORT).show();
                        }
                    })
                    .setPositiveButton("取消", new DialogInterface.OnClickListener() {
                        public void onClick(DialogInterface dialog, int which) {
                            Toast.makeText(MainActivity.this,"取消", Toast.LENGTH_SHORT).show();
                        }
                    })
                    .create();
                d.show();
            }
        });
    }
}

5.

时间: 2024-11-03 03:42:20

安卓学习-界面-ui-对话框的相关文章

安卓学习-界面-View的自定义

android的所有UI控件,都是基于View的,因此特意重点学习了下这个,为后面学习其他控件打下基础. http://www.360doc.com/content/14/0102/12/12050012_342019150.shtml 重新时常用覆盖的方法 package com.example.ddddddd; import android.content.Context; import android.graphics.Canvas; import android.graphics.Rec

安卓学习-界面-布局-RelativeLayout

RelativeLayout相对布局,所有内部的组件都是相对的 XML属性 XML属性 函数 说明 android:gravity setGravity 内部组件的对其方式 android:ignoreGravity setIgnoreGravity 设置哪个组件不受Gravity影响 RelativeLayout.LayoutParams用来设置内部组件的对齐方式 XML属性 说明 android:layout_centerHorizontal 水平居中 android:layout_cent

安卓学习-界面-View和GroupView

所有的界面元素都是继承与View(如:ImageView .Button等),布局继承于GroupView(如:LinearLayout等) view的主要属性,这里直接是xml配置里写了,当然直接通过代码也是可以的 XML属性 相关方法 说明 android:alpha setAlpha(float alpha) alpha值是从0~1的,比如0.5相当于透明50%,并且需要注意的是3.0以下版本没有这个属性,因此只要设置了就相当于不透明,3.0版本以下可以用过view.getBackgrou

安卓学习-界面-布局-LinearLayout

1.常用的xml属性 XML属性 相关方法 说明 android:baselineAligned setBaselineAligned 看不懂什么意思,这个是网上的解释 设置为False将阻止该布局管理器于他的子元素基线对其  android:divider setDividerDrawable(Drawable divider) LinearLayout好像没效果 设置垂直布局时2个按钮之间的分隔线 android:gravity setGravity 组件内部的对齐方式,有如下几种 top

安卓学习-界面-事件-handler

安卓程序运行后,系统会产生一条主线程,如果在主线程里修改UI,则会照成冲突,因此安卓建议用handler来更改UI 1.4张图片定时变换 MainActivity.java public class MainActivity extends Activity { ImageView imageView1; int index=0; int[] pics=new int[]{R.drawable.pic1,R.drawable.pic2,R.drawable.pic3}; @Override pr

安卓学习-界面-事件-AsyncTask

异步任务Asynctask完成一个下载 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=&quo

安卓学习-界面-ui-TabHost

TabHost注意点 1.界面上要放上TabHost,并添加自定义的选项卡,而且还必须用代码来设置tab,并不是xml放了就行的 2.Activity必须继承TabActivity,否则没有getTabHost函数 3.现在已经不推荐使用TabActivity了,推荐用Flagment,书上是这么说的 例子 第一个tab页登陆窗口是用另外一个activity的,其他都是XML里写的 activity_main.xml <LinearLayout xmlns:android="http://

安卓学习-界面-ui-TextEdit

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" android:padding="20dp" >

安卓学习-界面-ui-AdapterViewFlipper

类似Gallery,只不过这个是一张图片页 属性 方法 说明  android:animateFirstView  setAnimateFirstView(boolean animate)  显示第一个View时是否使用动画  android:inAnimation  setInAnimation(ObjectAnimator inAnimation) View显示动画,不用使用,直接报错  android:outAnimation  setOutAnimation(ObjectAnimator

安卓学习-界面-ui-ProcessBar

ProcessBar 属性 方法 说明