我的上下文菜单项选择在android studio中不起作用

问题描述 投票:0回答:1

所以我尝试在onContextItemSelected()上举杯,但它们没有起作用,但是在onCreateContextMenu()中,它们确实起作用,不确定为什么它不能重新识别所选项目?

public void loadText(int n){

    for (int i = 0; i < n ; i++) {
        iv = new TextView(this);
        LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
        layoutParams.setMargins(2, 2, 2, 2);
        iv.setLayoutParams(layoutParams);
        iv.setText(SP.getString("time" + i, def));
        iv.setTextSize(80);
        main.addView(iv);
        iv.setLongClickable(true);
        iv.setOnLongClickListener(new View.OnLongClickListener() {
            @Override
            public boolean onLongClick(View v) {
                registerForContextMenu(v);
                return false;
            }
        });
    }
}

@Override
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {
    super.onCreateContextMenu(menu, v, menuInfo);
    getMenuInflater().inflate(R.menu.pop_up,menu);
}

 @Override
public boolean onContextItemSelected(MenuItem item) {
    int id = item.getItemId();
    if (id == R.id.delete) {
        Toast.makeText(this, "works", Toast.LENGTH_SHORT).show();
    }
    else if (id == R.id.edit) {
        Toast.makeText(this, "works", Toast.LENGTH_SHORT).show();
    }
    return true;
}
android contextmenu
1个回答
0
投票

这是菜单弹出文件

<item
    android:id="@+id/delete"
    android:title="delete"
    android:orderInCategory="0"
    />
<item
    android:id="@+id/edit"
    android:title="edit"
    android:orderInCategory="1"
    />

->

© www.soinside.com 2019 - 2024. All rights reserved.