我正在为一个通过 wifi/蓝牙远程控制另一个设备的应用程序做一个 android 4+ 布局。我正在尝试尽可能地使用操作栏。
在这个应用程序的例子中,我想要一个为远程设备选择基本系统操作模式的选择器。在它的右边,我想要一个“编辑设置”按钮。因此用户可以只选择一种操作模式,也可以编辑所选的操作模式。我想要选择器旁边的编辑按钮,因为将它们分组很有意义。这两个操作体现了人们通常会在应用中使用的大部分功能。
我正在使用 android Activity 的默认示例代码,正如向导“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" />
需要使用 Activity 类的 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 属性,但是虽然它没有导致错误,但它也没有做任何我能看到的事情。
如果有人知道如何将我的编辑按钮附加到我的选择器的最右边,我会很高兴知道如何做到这一点。
最佳答案
系统控制操作项的位置,以在所有应用程序中提供共同的外观;换句话说,没有办法实现这一点(除非其他人知道)。您或许可以扩展操作栏,或者以某种方式重写它以允许重新定位操作项,但这超出了我的能力范围。
关于android - 操作栏 - 操作项的定位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12151569/