我正在尝试根据ListView中单击的项目动态生成消息。我已经尝试了下面发布的代码。我希望这能给出与单击项目相关的文本消息。
int messageId = getResources().getIdentifier(item,"strings",getPackageName());
String popUpMessage = getString(messageId);
PopUp.setMessage(popUpMessage);
PopUp.show();
答案 0 :(得分:0)
通过此代码,您如何知道点击了哪个项目?
对listview使用itemclick listener,然后您将获得单击的项目。
使用int position参数获取单击的项目。
答案 1 :(得分:-1)
需要以下步骤
获取ListView
ListView listView=(ListView)findViewById(R.id.lv);
在项目上注册一个监听器。
listView.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
}
});
为它创建一个警告对话框(将其粘贴在上面的onclick方法中)。
AlertDialog.Builder builder=new AlertDialog.Builder(context);
String item = (String) parent.getItemAtPosition(position);
builder.setMessage(item);
builder.show();
对于动态消息,您只需设置构建器的message属性。 像这样 -
builder.setMessage((String)parent.getItemAtPosition(position));
上面的行假设你的listView只包含一件事,如果它有多个东西,比如包含标题和消息的行,你想要检索消息并将其设置到对话框中。然后这样做
View rowView=(View)parent.getItemAtPosition(position);
TextView messageView=(TextView)rowView.findViewById(R.id.row);
builder.setMessage(messageView.getText().toString());
我希望能回答它。