registerForContextMenu不适用于父/子列表视图

时间:2010-08-03 05:19:45

标签: android

我有一个ListActivity,它使用定义2种视图类型的自定义ArrayAdapter,例如

父母1
   - 孩子11
   - 孩子12
父母2
   - 孩子21
父母3
   - 孩子31
   - 孩子32


我已成功实现了我想要的显示功能,但是当我在ListActivity中使用registerForContextMenu(getListView())注册列表视图时,打开上下文菜单的唯一视图是子视图,而我希望长时间单击父视图打开上下文菜单。我已将父视图类型定义为已启用,将子视图定义为已禁用,这只会使两者都忽略长按事件。有任何想法吗?我打算在父视图上定义OnLongClick事件,但我不确定如何获取Activity的MenuInflator(我在其自己的类中定义了我的ArrayAdapter),我应该将MenuInflator传递给我的ArrayAdapter吗? ?这看起来有点沉重,但它可能有用。

这是我的onCreate电话

@Override
protected void onCreate( Bundle savedInstanceState ) 
{
    super.onCreate( savedInstanceState );
    setContentView( R.layout.workout_activity );

    _pactAdapter = new WorkoutItemAdapter( this ); 
    setListAdapter( _pactAdapter );
    registerForContextMenu( getListView() );
}

0 个答案:

没有答案