嗨,我想创建一个完全一样的视图。
单击列表视图中的项目后,应打开带有单选按钮的微调器。
如果要为在 ListView 中单击的每个列表项显示一个微调器。它可能与AlertDialog
。
试试这个块
list.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> arg0,
View arg1, int position, long arg3)
{
AlertDialogView();
}
}
而AlertDialogView()的代码将是这样的
private void AlertDialogView()
{
final CharSequence[] items = {"15 secs", "30 secs", "1 min", "2 mins"};
AlertDialog.Builder builder = new AlertDialog.Builder(ShowDialog.this);
builder.setTitle("Alert Dialog with ListView and Radio button");
builder.setIcon(R.drawable.icon);
builder.setSingleChoiceItems(items, -1, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int item) {
Toast.makeText(getApplicationContext(), items[item], Toast.LENGTH_SHORT).show();
}
});
builder.setPositiveButton("Yes",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
Toast.makeText(ShowDialog.this, "Success", Toast.LENGTH_SHORT).show();
}
});
builder.setNegativeButton("No",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
Toast.makeText(ShowDialog.this, "Fail", Toast.LENGTH_SHORT).show();
}
});
AlertDialog alert = builder.create();
alert.show();
}
在列表视图中,每当您调用任何项目时,只需获取单击项目的位置,例如列表视图的第 9 个元素是单击该时间调用某个方法,如果您的微调器适配器依赖于单击项目列表而不是第一个按列表视图的单击项目位置填充微调器适配器,而不是简单地打开微调器,在关闭微调器并再次打开与更改微调器适配器不同的列表视图项目后。这个简单的逻辑应该可以解决您的问题,我想感谢 Aamirkhan 我,