Android 根据显示标题的长度动态定位ActionBar微调器的右角箭头

Android 根据显示标题的长度动态定位ActionBar微调器的右角箭头,android,android-actionbar,android-ui,android-spinner,Android,Android Actionbar,Android Ui,Android Spinner,在Google+应用程序中,ActionBar微调器的右角箭头的位置会根据当前显示字符串的长度进行调整。例如,选择“家庭”时,微调器的长度似乎比选择“熟人”时短 我必须做什么才能使右角箭头根据标题的长度动态定位?我的猜测是,我可以在styles.xml中设置一个属性来实现这一点 以下是my styles.xml: <style name="MyStyle" parent="android:style/Theme.Holo"> <item name="android:ac

在Google+应用程序中,
ActionBar
微调器的右角箭头的位置会根据当前显示字符串的长度进行调整。例如,选择“家庭”时,微调器的长度似乎比选择“熟人”时短

我必须做什么才能使右角箭头根据标题的长度动态定位?我的猜测是,我可以在styles.xml中设置一个属性来实现这一点

以下是my styles.xml:

<style name="MyStyle" parent="android:style/Theme.Holo">
    <item name="android:actionDropDownStyle">@style/MyDropDownNav</item>
</style>

<style name="MyDropDownNav" parent="android:style/Widget.Holo.Spinner">
    <item name="android:AttributeHere">AttributeValue</item>
</style>

@样式/MyDropDownNav
属性值
以下是我在MainActivity.java中的代码:

ActionBar actionBar = getActionBar();
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);

// Specify a SpinnerAdapter to populate the dropdown list.
SpinnerAdapter dataAdapter = new ArrayAdapter<String>(
        actionBar.getThemedContext(),
        android.R.layout.simple_list_item_1, android.R.id.text1,
        new String[] { "AAAAAAAAAAAAAAA", "BB" });

// Set up the dropdown list navigation in the action bar.
actionBar.setListNavigationCallbacks(dataAdapter, this);
ActionBar ActionBar=getActionBar();
actionBar.setNavigationMode(actionBar.NAVIGATION\u MODE\u列表);
//指定SpinnerAdapter以填充下拉列表。
SpinnerAdapter数据适配器=新阵列适配器(
actionBar.getThemedContext(),
android.R.layout.simple_list_item_1,android.R.id.text1,
新字符串[]{“AAAAAAAA”,“BB”});
//在操作栏中设置下拉列表导航。
setListNavigationCallbacks(dataAdapter,this);

与Google+不同,我的右角箭头的位置总是固定的。因此,如果我从下拉列表中选择“aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa。实际上,
ActionBar
中的
Spinner
宽度始终计算为其最长项目的长度<代码>日历
在这里做了一些特殊的处理。

你找到方法了吗?差不多4年过去了。。