单选按钮警报框

时间:2012-10-05 18:23:55

标签: android

public void mapDisplay() {
    final String[] selectedItem= getResources().getStringArray(R.array.map_display_choices);
    AlertDialog.Builder builder = new AlertDialog.Builder(this);
    // Set the dialog title
    builder.setTitle(R.string.mapDisplay)
           .setSingleChoiceItems(R.array.map_display_choices, mapDisplayOpt,
                      new DialogInterface.OnClickListener() {

            public void onClick(DialogInterface dialog, int which) {
                if(selectedItem[which].equals(Satellite)){
                    mapDisplayOpt = 1;
                    mapView.setSatellite(true);
                    dialog.dismiss();
                }else if(selectedItem[which].equals[Traffic]){
                    mapDisplayOpt = 2;
                    mapView.setTraffic(true);
                    dialog.dismiss();
                }else {
                    mapDisplayOpt = 0;
                    mapView.setStreetView(true);
                    dialog.dismiss();
                }
            }
           });             
    AlertDialog alert = builder.create();
    alert.show();      
}

我想问你很多事情,所以如果你们中的任何一个人能回答其中任何一个,请回答 1)当警报框出现时,如何选择正确的。我正在使用mapDisplayOpt为单选按钮输入正确的数字,但我不确定单选按钮的序列是否为1, 2,3或随机数?
2)当我选择o按钮时立即消失,我看不到所选的选项。我怎么能解决这个问题呢? 3)在中,我将mapView从默认值更改为其中一个卫星或流量。我怎样才能返回默认的mapview?我使用的streetView已弃用。
谢谢!

1 个答案:

答案 0 :(得分:2)

使用.equals()比较java(Android)中的String。

==比较字符串(对象)引用(内存位置)

.equals()比较字符串(对象)值...

 if(selectedItem[which].equals("Satellite")){

}