0
我想在应用程序设置的第二个活动上有一个菜单,所以我使用了ListView。现在我想根据点击的项目将一些信息放到表格上,即如果电话项目被点击了,我想打开一些对话框输入电话号码,但是如果电子邮件项目被点击了,我想打开一个对话框但具有不同的数据,所以我必须知道哪个项目被点击。下面是它现在的样子:Android AlertDialog我怎样才能识别出对话框的对象
mainListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position,
long id) {
String item = ((TextView)view).getText().toString();
showInputDialog();
}
});
public void showInputDialog() {
AlertDialog.Builder alert = new AlertDialog.Builder(this);
alert.setTitle("Phone number");
alert.getContext().
// Set an EditText view to get user input
final EditText input = new EditText(this);
input.setInputType(InputType.TYPE_CLASS_NUMBER);
alert.setView(input);
alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
dataEntry = input.getText().toString();
settingsList.put("phone",dataEntry);
fileManage.writeFile(file, settingsList);
fileManage.readFile(file);
}
});
alert.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
// Canceled.
}
});
alert.show();
}
OMG它是如此明显,有一个(长ID)在setOnItemClickListener所以现在是这样的: mainListView.setOnItemClickListener(新AdapterView.OnItemClickListener(){ @覆盖 公共无效onItemClick(适配器视图>父母,查看视图,int位置, long id){ String item =((TextView)view).getText()。toString(); showInputDialog(id); } }); public void showInputDialog(long id){} – user3212019