在ListView上下文菜单中获取项目的标记?

时间:2011-10-31 16:35:35

标签: java android listview contextmenu

我有一个填充了不同视图的列表视图,每个视图都有一个与之关联的标记。长按其中一个时,会出现上下文菜单。我需要获得对所按下的视图的引用,并获取与其关联的标记。这是我试过的代码

    @Override
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) {
    super.onCreateContextMenu(menu, v, menuInfo);
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.context_menu, menu);
    menu.setHeaderTitle("Options");

    AdapterView.AdapterContextMenuInfo info;
    try {
        info = (AdapterView.AdapterContextMenuInfo) menuInfo;
    } catch (ClassCastException e) {
        return;
    }
    long id = getListAdapter().getItemId(info.position);
    ListView lv = (ListView) v;
    View row = (View) lv.getItemAtPosition((int) id);
    row_id = (Long) row.getTag(); // global variable 

}

row_id是我想要设置为所按视图标记的全局变量。标签设置正确。尝试以这种方式获取id时,我得到一个NULLPOINTER

0 个答案:

没有答案