我正在尝试获取列表视图项的文本。我正在制作上下文菜单的标题是项目的单击文本。
这是我的观点
<LinearLayout
android:id="@+id/innerlayout"
android:layout_width="fill_parent"
android:layout_height="0dp"
android:clickable="true"
android:layout_weight="0.85"
android:orientation="vertical" >
<ListView
android:id="@android:id/list"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
</LinearLayout>
在oncreate中我设置了简单的光标适配器
SimpleCursorAdapter mysqliteadapter=new SimpleCursorAdapter(this,R.layout.thepatientrow,cursor,from,to);
setListAdapter(mysqliteadapter);
在OnCreateContextMenu中,我想设置Heder title by Selected Item Text
public void onCreateContextMenu(ContextMenu menu, View v,ContextMenu.ContextMenuInfo menuInfo){
super.onCreateContextMenu(menu, v, menuInfo);
menu.setHeaderTitle("");
menu.add(Menu.NONE,CONTEXT_MENU_DELETE_ITEM,Menu.NONE,"Delete");
menu.add(Menu.NONE,CONTEXT_MENU_UPDATE,Menu.NONE,"Update");
}
请告诉您宝贵的建议。
我添加了一些图片以便于理解
我想显示上下文菜单标题,如下所示
答案 0 :(得分:5)
onCreateContextMenu(ContextMenu menu, View v,ContextMenu.ContextMenuInfo menuInfo)
View v
指的是列表中的所选项目。在R.layout.thepatientrow
中,找到与您的布局的标题(例如R.id.header_text_view)相关的TextView的id
,然后:
menu.setHeaderTitle(((TextView)v.findViewById(R.id.header_text_view)).getText().toString());
答案 1 :(得分:0)
这是我必须使所选项目显示为标题。 我有一个带有imageview和2 textview的自定义列表视图,所以我只想找到我想通过其ID显示的textview。
@Override
public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenuInfo menuInfo) {
super.onCreateContextMenu(menu, v, menuInfo);
if (v.getId() == R.id.listView1) {
AdapterContextMenuInfo info = (AdapterContextMenuInfo) menuInfo;
String titulo = (String) ((TextView) info.targetView
.findViewById(R.id.list_guia)).getText();
menu.setHeaderTitle(titulo);
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu_list, menu);
}
}