我有ScrollView
嵌入式RelativeLayout
嵌入式LinearLayout
。
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent" xmlns:android="http://schemas.android.com/apk/res/android"
android:paddingLeft="16dp" android:paddingRight="16dp" android:id="@+id/relativeLayout">
<LinearLayout
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="wrap_content" android:layout_below="@+id/Today"
android:layout_alignParentLeft="true" android:id="@+id/linearLayoutToday"
android:animateLayoutChanges="true">
</LinearLayout>
</RelativeLayout>
</ScrollView>
我想为CheckBox
个对象添加一个上下文菜单,这些对象是动态添加的,如下所示。
private void addItem() {
CheckBox ch = new CheckBox(this);
ch.setText("Test");
registerForContextMenu(ch);
linearLayoutToday.addView(ch);
}
问题出现在onContextItemSelected
方法中,因为item.getMenuInfo()
返回的值始终为空。
@Override
public boolean onContextItemSelected(MenuItem item) {
AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo) item.getMenuInfo();
System.out.println(info.targetView);
return true;
}
有谁知道如何解决这个问题?
答案 0 :(得分:1)
导致此问题是因为要向所有子项添加上下文菜单,只需向父项添加上下文菜单即可。但是,仅支持其他视图(例如ListView),而不支持布局。