Android开发对话框之单选对话框的…

Android开发对话框之单选对话框的实现

在values文件夹下建立
compnay.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string-array name="company">
        <item>阿里巴巴</item>
        <item>腾讯</item>
        <item>百度</item>
    </string-array>
</resources>

ceo.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string-array name="ceo">
        <item>马云</item>
        <item>马化腾</item>
        <item>李彦宏</item>
    </string-array>
</resources>

file.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string-array name="file">
        <item>电子商务</item>
        <item>社交网络</item>
        <item>搜索</item>
    </string-array>
</resources>

我们main.xml

<LinearLayout 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:orientation="vertical"
    tools:context=".MainActivity" >
    <Button 
        android:id="@+id/sel"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_margin="5px"
        android:text="选择公司"/>
    
    <TextView
        android:id="@+id/mysel"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_margin="5px"/>
    
    <TextView
        android:id="@+id/company"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_margin="5px"/>
    <TextView 
        android:id="@+id/ceo"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_margin="5px"/>
    
    <TextView 
        android:id="@+id/file"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_margin="5px"/>
    
</LinearLayout>

我们.java文件

package com.example.radiodialogdemo;

import android.os.Bundle;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
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 button=null;
private TextView mysel=null;
private TextView  company=null;
private TextView ceo=null;
private TextView file=null;
private int chNum=0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
this.button=(Button) super.findViewById(R.id.sel);
this.mysel=(TextView) super.findViewById(R.id.mysel);
this.company=(TextView) super.findViewById(R.id.company);
this.ceo=(TextView) super.findViewById(R.id.ceo);
this.file=(TextView) super.findViewById(R.id.file);
//为我们的按钮添加点击事件
this.button.setOnClickListener(new OnClickListenerImp());
}
public class OnClickListenerImp implements OnClickListener{

public void onClick(View arg0) {
//创建我们的单选对话框
Dialog dialog=new AlertDialog.Builder(MainActivity.this)
.setTitle("选择公司")
.setIcon(R.drawable.ic_launcher)
.setPositiveButton("确定", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
MainActivity.this.mysel.setText("您的选择是"+MainActivity.this.getResources().getStringArray(R.array.company)[chNum]);
}
})
.setNegativeButton("取消", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
}
})
.setSingleChoiceItems(R.array.company, 0, new DialogInterface.OnClickListener() {
//上边第一个表示的是公司数组列表,第二个参数表示默认选择的,第三个监听器
public void onClick(DialogInterface dialog, int which) {
chNum=which;
MainActivity.this.company.setText("公司:"+MainActivity.this.getResources().getStringArray(R.array.company)[which]);
MainActivity.this.ceo.setText("ceo:"+MainActivity.this.getResources().getStringArray(R.array.ceo)[which]);
MainActivity.this.file.setText("行业:"+MainActivity.this.getResources().getStringArray(R.array.file)[which]);
}
})
.create();
dialog.show();
}
}

}




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值