步步为营_Android开发课[18]_用户界面之Dialog(对话框)

Focus on technology, enjoy life!—— QQ:804212028

浏览链接:http://blog.csdn.net/y18334702058/article/details/44624305


  • 主题:用户界面之Dialog(对话框)

Dialog(对话框)实例:

activity_main.xml源代码:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
    <Button
        android:id="@+id/btn1"
        android:layout_height="wrap_content"
        android:layout_width="fill_parent"
        android:text="简易对话框"
    />
    <Button
        android:id="@+id/btn2"
        android:layout_height="wrap_content"
        android:layout_width="fill_parent"
        android:text="列表选择框"
    />
    <Button
        android:id="@+id/btn3"
        android:layout_height="wrap_content"
        android:layout_width="fill_parent"
        android:text="第一种进度条框"
    />
    <Button
        android:id="@+id/btn4"
        android:layout_height="wrap_content"
        android:layout_width="fill_parent"
        android:text="第二种进度条框"
    />

</LinearLayout>

MainActivity.java源代码:

import android.app.Activity;
import android.app.AlertDialog;
import android.app.ProgressDialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class MainActivity extends Activity implements OnClickListener{

    private Button btn1,btn2,btn3,btn4,btn5,btn6,btn7,btn8;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        init();
    }
    private void init() {

        btn1 =(Button)findViewById(R.id.btn1);
        btn1.setOnClickListener(this);
        btn2 =(Button)findViewById(R.id.btn2);
        btn2.setOnClickListener(this);
        btn3 =(Button)findViewById(R.id.btn3);
        btn3.setOnClickListener(this);
        btn4 =(Button)findViewById(R.id.btn4);
        btn4.setOnClickListener(this);
    }

    @Override
    public void onClick(View v) {

        switch(v.getId()){

        case R.id.btn1:
            AlertDialog.Builder builder0 = new AlertDialog.Builder(MainActivity.this);
            builder0.setIcon(R.drawable.ic_launcher);
            builder0.setTitle("对话框");
            builder0.setMessage("你是准备去打酱油吗?");
            //设定积极按钮事件
            builder0.setPositiveButton("确认", new DialogInterface.OnClickListener() {

                public void onClick(DialogInterface arg0, int arg1) {

                    Toast.makeText(MainActivity.this, "点击了--确认",
                             Toast.LENGTH_SHORT).show();
                }
            });
            //设定消极按钮事件
            builder0.setNegativeButton("取消", new DialogInterface.OnClickListener() {

                public void onClick(DialogInterface arg0, int arg1) {

                    Toast.makeText(MainActivity.this, "点击了--取消",
                             Toast.LENGTH_SHORT).show();
                }
            });
            builder0.create().show();
            break;

        case R.id.btn2:
            final String[] mItems = { "item0", "item1", "itme2", "item3", "itme4",
                    "item5", "item6" };
            AlertDialog.Builder builder1 = new AlertDialog.Builder(MainActivity.this);
            builder1.setTitle("列表选择框");
            builder1.setItems(mItems, new DialogInterface.OnClickListener() {

                public void onClick(DialogInterface dialog, int which) {

                    Toast.makeText(MainActivity.this, mItems[which],
                             Toast.LENGTH_SHORT).show();
                }
            });
            builder1.create().show();
            break;

        case R.id.btn3:
            ProgressDialog mProgressDialog = new ProgressDialog(MainActivity.this);
            mProgressDialog.setIcon(R.drawable.ic_launcher);
            mProgressDialog.setTitle("第一种进度条框");
            //设定进度条风格
            mProgressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
            //设定进度条最大值
            mProgressDialog.setMax(75);
            mProgressDialog.setButton("确认",new DialogInterface.OnClickListener() {

                public void onClick(DialogInterface arg0, int arg1) {

                    Toast.makeText(MainActivity.this, "点击了--确认",
                             Toast.LENGTH_SHORT).show();
                }
            });

            mProgressDialog.setButton("取消",new DialogInterface.OnClickListener() {

                public void onClick(DialogInterface arg0, int arg1) {

                    Toast.makeText(MainActivity.this, "点击了--取消",
                             Toast.LENGTH_SHORT).show();
                }
            });
            mProgressDialog.show();

            break;

        case R.id.btn4:
            mProgressDialog = new ProgressDialog(this);
            mProgressDialog.setTitle("第二种进度条框");
            mProgressDialog.setMessage("正在读取中,请稍候。。。");
            mProgressDialog.setIndeterminate(true);
            mProgressDialog.setCancelable(true);
            mProgressDialog.show();
            break;

        }
    }
}

运行结果:

点击第一个按钮:

点击第二个按钮:

点击第三个按钮:

点击第四个按钮:

Focus on technology, enjoy life!—— QQ:804212028

浏览链接:http://blog.csdn.net/y18334702058/article/details/44624305

时间: 2024-10-10 23:27:36

步步为营_Android开发课[18]_用户界面之Dialog(对话框)的相关文章

步步为营_Android开发课[19]_用户界面之ListView(列表视图)

Focus on technology, enjoy life!-- QQ:804212028 浏览链接:http://blog.csdn.net/y18334702058/article/details/44624305 主题:用户界面之ListView(列表视图) -ListView和TextView,Button等控件一样,一样的定义方式和显示方式,所以不再重复学了.但是Android开发中ListView经常适配一些适配器来显示,所以我们要学重点是是ListView的各种适配. List

步步为营_Android开发课[14]_用户界面之Layout(布局)

Focus on technology, enjoy life!-- QQ:804212028 浏览链接:http://blog.csdn.net/y18334702058/article/details/44624305 主题:用户界面之Layout(布局) -在Android开发中我们有传说中的5大布局,它们的结合使用,画出了APP界面的条条框框. Android中常用的5大布局: 线性布局(LinearLayout):按照垂直或者水平方向布局的组件. 帧布局(FrameLayout):组件

步步为营_Android开发课[13]_用户界面之view(视图)

Focus on technology, enjoy life!-- QQ:804212028 浏览链接:http://blog.csdn.net/y18334702058/article/details/44624305 主题:用户界面之view(视图) -View类是Android的一个超类,这个类几乎包含了所有的屏幕类型.每一个View都有一个用于绘图的画布,这个画布可以进行任意扩展.在游戏开发中叶可以自定义视图(View),这个画布的功能更能满足我们在游戏开发中的需要.在Android中

步步为营_Android开发课[30]_用户界面之ViewFlipper

Focus on technology, enjoy life!-- QQ:804212028 浏览链接:http://blog.csdn.net/y18334702058/article/details/44624305 主题:用户界面之ViewFlipper - ViewFlipper多视图切换(实例) 实现效果: 左右滑动,模拟欢迎界面的图片切换. activity_main.xml: <?xml version="1.0" encoding="utf-8&quo

步步为营_Android开发课[21]_用户界面之Notification(通知栏)

Focus on technology, enjoy life!-- QQ:804212028 浏览链接:http://blog.csdn.net/y18334702058/article/details/44624305 本文资源借助于网友:幻影浪子 - 主题:用户界面之Notification(通知栏) - Notification实例(含系统自带Notification+半自定义Notification+自定义Notification) activity_main.xml: <?xml v

步步为营_Android开发课[20]_用户界面之Menu(菜单)

Focus on technology, enjoy life!-- QQ:804212028 浏览链接:http://blog.csdn.net/y18334702058/article/details/44624305 主题:用户界面之Menu(菜单) - item元素的属性说明如下: - id:唯一标示菜单的ID引用. - menuCategory:菜单分类. - orderInCategory:分类排序. - title:菜单标题字符串. - titleCondensed:浓缩标题,适合

步步为营_Android开发课[17]_用户界面之Button(按钮)

Focus on technology, enjoy life!-- QQ:804212028 浏览链接:http://blog.csdn.net/y18334702058/article/details/44624305 主题:用户界面之Button(按钮) Button和ImageButton控件实例: activity_main.xml源代码: <?xml version="1.0" encoding="utf-8"?> <LinearLay

步步为营_Android开发课[37]_用户界面之theme和style

Focus on technology, enjoy life!-- QQ:804212028 浏览链接:http://blog.csdn.net/y18334702058/article/details/44624305 主题:用户界面之theme和style -theme和style很容易混淆,theme样式是用于添加到application或者activity中去的.而style样式是用于添加到view控件中去的. 样式的定义: 找到项目文件夹:res/valus/styles,style

步步为营_Android开发课[32]_用户界面之Toast(吐司)

Focus on technology, enjoy life!-- QQ:804212028 浏览链接:http://blog.csdn.net/y18334702058/article/details/44624305 主题:用户界面之Toast(吐司) -常用于APP中的一些小提示 Toast的结构分析: Toast toast=Toast.makeText(MainActivity.this, "默认的Toast", Toast.LENGTH_SHORT).show(); 第一