问题描述
希望您感觉良好。
所以我的问题是,我在放大布局菜单,就像在底部看到的那样,但是现在在放大布局时会出现错误。
这是我的布局和ItemLongClick方法的完整代码。另外,我想在Listitem上长按一下,然后在屏幕上弹出一个带有不同单词的弹出窗口,例如edit delete what。
我的布局(ConstraintLayout)有什么问题吗?
PATH
我的popup_layout.xml:
listView = (ListView) findViewById(R.id.listView);
listView.setonItemLongClickListener(new AdapterView.OnItemLongClickListener() {
@Override
public boolean onItemLongClick(AdapterView<?> parent,View v,int position,long id) {
PopupMenu p = new PopupMenu(ViewListContents.this,v);
MenuInflater inflater = p.getMenuInflater();
inflater.inflate(R.layout.popup_layout,p.getMenu());
p.show();
return true;
}
});
在此先感谢您的反馈
解决方法
您需要菜单资源文件,而没有布局资源文件。将XML文件的位置更改为菜单资源目录。如果您没有菜单资源目录,请创建该目录并将XML文件(pop_layout.xml)放置在该目录中。此外,菜单资源文件中也不能具有约束布局。ViewGroups仅用于布局资源文件,而不适用于布局资源文件菜单资源文件。
菜单资源文件如下:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/mail"
android:icon="@drawable/ic_mail"
android:title="@string/mail" />
<item android:id="@+id/upload"
android:icon="@drawable/ic_upload"
android:title="@string/upload"
android:showAsAction="ifRoom" />
<item android:id="@+id/share"
android:icon="@drawable/ic_share"
android:title="@string/share" />
希望有帮助。