设置Android下拉导航微调器位置

时间:2013-09-26 15:18:14

标签: android drop-down-menu

我有一个使用Drop-down navigation的应用程序,操作栏标题可能会根据当前片段而改变。由于标题的长度不同,因此下拉旋转器会在动作条周围不断移动而不是保持静止(参见下图)。有没有办法强制微调器在操作栏的左侧说出或强制它的位置而不管标题长度?

enter image description here

1 个答案:

答案 0 :(得分:0)

ActionBar showAsAction中布局内的属性设置为始终应该足以使ActionBar中的微调器保持可见,无论文本是否进入它。当文本很长时,文本将被剪裁,但如果没有空间,则没有空间。

<item android:id="@+id/spinnerItem"
      ...
      android:showAsAction="always"/>

修改

如果你没有处理布局文件,但仍然使用内置的ActionBar项,那么你可以通过它的id获取该元素(如果你有某种方式可用),然后在与普通菜单组件一样的代码。我不熟悉通过代码创建菜单项,因为我通常在布局文件中这样做,但我相信你可以在引入它时将其存储并将其存储在某个地方,以便在菜单设置阶段或稍后使用给定时间点,如果您想要稍后设置此属性。

@Override
public boolean onCreateOptionsMenu(Menu menuF)
{
    spinnerMenuItem_ = menuF.findItem(R.id.spinnerId);
    spinnerMenuItem_.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
}