【发布时间】:2015-12-21 16:07:00
【问题描述】:
代码有一个ListView,点击一个列表项会弹出一个AlertDialog。 AlertDialog 有两个单选按钮“是”和“否”,然后是一个“确定”按钮。
当用户选择“是”时,下一个Activity 将启动,如果选择“否”,他们将留在同一个Activity。
我的问题是:无论我选择哪个列表项,我都会被带到相同的 'Next-activity' 。根据我选择的列表项,我想参加不同的活动。
listview = (ListView) findViewById(R.id.mylistview);
final String[] items = new String[]{"IOS", "ANDROID", "WINDOWS"};
ArrayAdapter<String> adapter = new ArrayAdapter<String>(getApplicationContext(), android.R.layout.simple_expandable_list_item_1, items);
listview.setAdapter(adapter);
listview.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
int itemposition = position;
String itemvalue = (String) listview.getItemAtPosition(position);
final CharSequence[] items1 = {"yes", "no"};
final AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
builder.setTitle("slection confirmation");
builder.setCancelable(false);
builder.setSingleChoiceItems(items1, -1, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
selection = (String) items1[which];
Toast.makeText(getApplicationContext(), items1[which], Toast.LENGTH_SHORT).show();
}
});
builder.setNeutralButton("OK",new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
switch (selection)
{
case("yes"):
Intent myint=new Intent(MainActivity.this,secondpage.class);
myint.putExtra("act1","");
startActivity(myint);
break;
case("no"):
dialog.cancel();
break;
}
}
});
AlertDialog alert = builder.create();
alert.show();
}
});
}
}
【问题讨论】:
标签: android listview android-intent listitem