我已经拥有拥有ListView(简单的记事本应用程序)的Main.java活动。 单击带有“复制”的列表视图项(单个注释)时,我需要上下文菜单。 我有3个音符

  1. 长音符
  2. 网址注释
  3. 简短说明

单击时仅弹出URL注释上下文菜单。 为什么?

public class Main extends Activity {
    private Button createButton;
    private ListView notesListView;
    private ArrayList<Note> notes;
    private Note selectedNote;
    public static final int noteEditorRequest = 1;
    public static final int noteCreateReqeust = 2;

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        notes = NoteFileAdapter.getNotes();
        selectedNote = null;

        if (notes == null) {
            Toast.makeText(this, R.string.err_read, Toast.LENGTH_LONG).show();
            notes = new ArrayList<Note>();
        }

        createButton = (Button) findViewById(R.id.mainCreateButton);
        createButton.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(Main.this, NoteEditor.class);
                intent.putExtra("request", noteCreateReqeust);
                startActivityForResult(intent, noteCreateReqeust);
            }
        });

        notesListView = (ListView) findViewById(R.id.mainNotesListView);
        notesListView.setAdapter(new MainNoteAdapter(this, notes));
        registerForContextMenu(notesListView);
    }

    @Override
    public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) {       
        AdapterContextMenuInfo info = (AdapterContextMenuInfo) menuInfo;
        selectedNote = (Note) notesListView.getItemAtPosition(info.position);

        menu.setHeaderTitle(R.string.contextmenu_title);
        menu.add(R.string.contextmenu_copy).setOnMenuItemClickListener(
                new OnMenuItemClickListener() {
                    @Override
                    public boolean onMenuItemClick(MenuItem item) {
                        ClipboardManager clipboardManager = (ClipboardManager) getSystemService(CLIPBOARD_SERVICE);
                        clipboardManager.setText(selectedNote.getTextContent());
                        return true;
                    }
                });
    }

  ask by patseb translate from so

本文未有回复,本站智能推荐:

7回复

在Android中使用ContextMenu与ListView

我正在开发一个android应用程序。我将有一个listview,并且我设置了一个上下文菜单,当长按listview项时将显示该菜单。如何从选择的listview项中获取该项(例如,来自listview textview的文本)从contextmenu中选择了一个动作,以便我可以处理它? 这是
1回复

Android:listview上的Contextmenu始终选择列表中的最后一项

我已经创建了一个列表视图,其中每个项目都从Mysql数据库中获取了多个值: 使用ContextMenu,我正在对列表视图中所选项目的值“ table”执行操作。 但是,deleteUser函数始终对列表视图中最后一项的“表”值起作用。 关于如何使所选项目的“表格”值起作用的任何建议都
2回复

Android:ContextMenu不显示

在我的应用程序中,我的主布局中有一个ListView。 在相应的活动中,我的onCreate中包含以下内容: ListView中的每个项目都是TallyItemView类型的,继承自LinearLayout。 我用来为上下文菜单充气的代码是: 从理论上讲,当您长按某个项目时,将显示一
2回复

Android:如何使用ContextMenu创建可点击的ListView?

我有一个可单击的ListView并尝试为Items创建一个上下文菜单,但是如果我第一次单击很长,它将激活onListItemClick方法。 下次可以使用。 如果我使用openContextMenu激活上下文菜单, openContextMenu抛出StackOverflowError 。
1回复

一个活动中有多个listview,每个listview都有contextmenu

我在一个活动中有多个ListView,并且每个ListView都有ContextMenu。 实际上,它应该可以在所有7个ListView上正常工作,但仅适用于第七个List 这是我的代码。 请帮忙
1回复

ListView和ContextMenu

是否可以使用ListView类中的上下文菜单来实现? 这里没有onContextItemSelected()方法。 我不想在Activity类中使用上下文菜单编写代码。 谢谢!
8回复

检测哪个选定项(在ListView中)产生了ContextMenu(Android)

我有一个ListView ,允许用户长按项目以获取上下文菜单。 我遇到的问题是确定他们长按的ListItem 。 我试过这样做: 但它只是挂起,直到ANR弹出。 我怀疑在创建菜单后,不再选择ListItem 。 看起来您可以监控点击或长按,然后在那里记录点击的项目: 但这对我来
1回复

带有ContextMenu选项的ListView

首先,我的英语不太好。 我有一个这样的ListView和另一个TextView 。 我的问题是我想把contextMenu放在那里,但我不能。 我失去了很多时间,无法找到解决方案。 我使用了registerForContextMenu(listViewTotes) ,使用了onCrea