android – 动作栏 – 动作项目的定位

我正在为一个通过wifi /蓝牙远程控制另一个设备的应用程序做一个
android 4布局.我正在尝试使用操作栏,因为它可以使用.

在这个应用程序的情况下,我想有一个选择器,为远程设备选择基本的系统操作模式.在它的右侧,我想要一个“编辑设置”按钮.因此用户可以选择一种操作模式,也可以编辑所选的操作模式.我想要选择器旁边的编辑按钮,因为将它们分组是有意义的.这两个动作表达了人们通常在应用中使用的大部分功能.

我正在使用Android活动的默认示例代码,因为向导在我的项目中插入了“new> other> android activity”,它有一个已经设置并正常工作的选择器.

问题是,选择器放在操作栏的最左侧,所有其他操作项从右侧开始并向左移动.我似乎无法立即将“编辑”操作项的位置锁定在插入的选择器的右侧.

菜单XML中的项目如下所示:

<item android:id="@+id/edit_configuration"
    android:title="Edit"
    android:orderInCategory="2"
    android:layout_gravity="left"
    android:showAsAction="always" />
<item android:id="@+id/menu_settings"
    android:title="@string/menu_settings"
    android:orderInCategory="100"
    android:showAsAction="never" />

需要使用onCreate中的代码为活动类插入选择器.

    // Set up the action bar.
    final ActionBar actionBar = getActionBar();
    actionBar.setDisplayShowTitleEnabled(false);
    actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);

    // Set up the dropdown list navigation in the action bar.
    actionBar.setListNavigationCallbacks(
            // Specify a SpinnerAdapter to populate the dropdown list.
            new ArrayAdapter(
                    actionBar.getThemedContext(),
                    android.R.layout.simple_list_item_1,
                    android.R.id.text1,
                    new String[]{
                            getString(R.string.title_section1),
                            getString(R.string.title_section2),
                            getString(R.string.title_section3),
                    }),
            this);

我已经在菜单XML中尝试了标准的layoutGravity属性,但是虽然它没有导致错误,但它也没有做我能看到的任何事情.

如果有人知道如何将我的编辑按钮附加到我的选择器的右边,我会很高兴听到它是如何完成的.

最佳答案 系统控制动作项的位置,以提供所有应用程序的通用外观;换句话说,没有办法实现这一点(除非别人不知道).或许,您可以扩展操作栏,或以某种方式重写它以允许重新定位操作项,但这超出了我的技能.

点赞