GridView按钮操作栏

时间:2013-10-22 12:32:51

标签: java android gridview android-actionbar adapter

我正在使用网格视图,我需要在某处放置一个按钮,因此当用户点击它时会进行一些计算。

我认为使用Action Bar的“花哨”和相对不错(设计明智)的实现。

如何在适配器中实现Action Bar(Grid View需要适配器)?

我也尝试了上下文菜单但遇到与Action Bar相同的问题,因为他们需要从Activity

继承
    public void onCreateContextMenu(ContextMenu menu, View v,
            ContextMenu.ContextMenuInfo menuInfo) {
        AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo)menuInfo;
        menu.add(0, test1, 0, "TEST");
        menu.add(0, test2, 0, "Test2");
    }


    public boolean onContextItemSelected(MenuItem item) {


        switch (item.getItemId()) {
        case test1:

        case test2:

        default:
                return false;
        }

    }

1 个答案:

答案 0 :(得分:0)

如果您处于API级别11或更高级别,则只需在布局xml中使用Theme.Holo作为样式。例如:

<activity android:theme="@style/Theme.Holo.Light" ... >

然后,您可以使用menu.xml添加一些按钮。例如:

<menu xmlns:android="http://schemas.android.com/apk/res/android" >    
    <item android:id="@+id/action_search
          android:icon="@drawable/ic_action_search"
          android:title="@string/action_search"/>    
    <item android:id="@+id/action_compose"
          android:icon="@drawable/ic_action_compose"
          android:title="@string/action_compose" />
</menu>

在您的活动中,您必须覆盖onOptionsItemSelected:

@Override
public boolean onOptionsItemSelected(MenuItem item) {    
    // Handle presses on the action bar items    
    switch (item.getItemId()) {        
        case R.id.action_search:            
            openSearch();            
            return true;        
        case R.id.action_compose:            
            composeMessage();            
            return true;        
        default:            
            return super.onOptionsItemSelected(item);    
    }
}

有关详细信息,请查看official docs

相关问题