• Android小项目之选择对话框(附源码)


    还记得早先我们做的记算器的例子吗?当中的验证判断用到了对话框,今天我们来做一个不一样的对话框,要做的这个小例子是一个可供选择效果的对话框即层层迭迭的Alert Dialog;界面方面我们摆放一个Button来做一个按钮事件,解发这个按钮事件后,再通过类似列表项目的方式呈现在Alert Dialog 里面。
    功能用途:投票、选择器、遥控器等类型。。。最后返回程序,取得用户选择菜单项目结果。

    效果图:

         

    程序中用到的数据资源如下:

    <resources>
     
        <string name="hello">K..L.. 好餓呀,要上哪吃飯</string>
     
        <string name="app_name">有選擇的對話框</string>[color=#333333][font=Georgia]
     
    <string name="Choose">按我開始</string>
     
    <string name="Tittle">按我開始選擇</string>
     
    <string name="body">你選選擇的是:</string>
     
    <string name="Ok">確定</string> 
    <string-array name="Dialog">
     
        <item>韓國餐廳</item>
     
        <item>一站式餐廳</item>
     
        <item>回家湘</item>
     
        <item>富州酒店</item>
     
    </string-array>
     
    </resources>

    功能代码如下:因为使用了选择功能的对话框,可能初期看代码有点复杂,建议利用eclipse的文档大纲先把代码层次分好,有利用观看和理解代码。

    import android.app.Activity; [indent] 
    import android.app.AlertDialog;
     
    import android.content.DialogInterface;
     
    import android.os.Bundle;
     
    import android.view.View;
     
    import android.view.View.OnClickListener;
     
    import android.widget.*;
     
    
    public class ChosseDialog extends Activity {
     
    
    private Button mButton;
     
    private TextView mTextView; 
    private CharSequence Text;
     
    
    /** Called when the activity is first created. */
     
    public void onCreate(Bundle savedInstanceState) {
     
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main);
     
    mButton=(Button)findViewById(R.id.Button01);
     
    mTextView=(TextView)findViewById(R.id.TextView01);
     
    mButton.setText(R.string.Choose);
     
    mTextView.setText("請選擇");
     
    mButton.setOnClickListener(new OnClickListener() {
     
    
    @Override
     
    public void onClick(View v) {
     
    // TODO Auto-generated method stub
     
    new AlertDialog.Builder(ChosseDialog.this).setTitle(R.string.hello)
     
    .setItems(R.array.Dialog, new DialogInterface.OnClickListener() {
     
    @Override
     
    public void onClick(DialogInterface dialog, int which) {
     
    // TODO Auto-generated method stub
     
    
    CharSequence strDialog=getString(R.string.body);
     
    String[] aryShop=getResources().getStringArray(R.array.Dialog); 
    Text=strDialog+aryShop[which];
     
    new AlertDialog.Builder(ChosseDialog.this)[/indent] .setTitle(R.string.Tittle)
     
    .setMessage(Text).setNegativeButton(R.string.Ok, new DialogInterface.OnClickListener() {
     
    @Override
     
    public void onClick(DialogInterface dialog, int which) {
     
    
    // TODO Auto-generated method stub
     
    mTextView.setText(Text);
     
    }
     
    }).show();
     
    }
     
    }).setNegativeButton("取消", new DialogInterface.OnClickListener() {
     
    @Override
     
    public void onClick(DialogInterface dialog, int which) {
     
    // TODO Auto-generated method stub
     
    dialog.dismiss();
     
    }
     
    }).show();
     
    }
     
    });
     
    }
     
  • 相关阅读:
    利用存储过程生成随机数,并用其它存储过程调用此过程
    dataGridView中的数据操作
    listView绑定数据
    我的简易 数据存取器 的封装
    dataGridView 控件的简单绑定
    文件写入写出的封装
    Button1.Attributes.Add()方法小结
    自定义分页栏
    安迪的找工作日志——9.12笔试(优酷土豆)问题及解答
    安迪的找工作日志——9.13在教四四楼墙上看到的
  • 原文地址:https://www.cnblogs.com/vus520/p/2561957.html
Copyright © 2020-2023  润新知