android – 如何在ActionBar的右侧保留扩展的SearchView(使用自定义图标时)?

android – 如何在ActionBar的右侧保留扩展的SearchView(使用自定义图标时)?,第1张

概述我的问题与 SearchView wrong alignment和 SearchView positions when expanded in ActionBar密切相关,但那里发布的答案不起作用. 所以,我在Action Bar使用的是SearchView: <item android:id="@+id/action_search" android:icon="@drawable/nav 我的问题与 SearchView wrong alignment和 SearchView positions when expanded in ActionBar密切相关,但那里发布的答案不起作用.

所以,我在Action Bar使用的是SearchView:

<item androID:ID="@+ID/action_search"    androID:icon="@drawable/navi_search"    androID:title="@string/action_search"    androID:showAsAction="ifRoom|collapseActionVIEw"    androID:actionVIEwClass="androID.Widget.SearchVIEw"   />

它默认看起来像这样(右上角,溢出菜单旁边):

问题是,当扩展时,我希望SearchVIEw保持在右侧,而是移动到左边缘,在主页按钮(应用程序图标)旁边.

我尝试将showAsAction更改为其中任何一个(as suggested here):

androID:showAsAction="ifRoom"androID:showAsAction="always"

…这会在展开时修复对齐,但在折叠状态下自定义图标会丢失:

此外,菜单上的androID:layout_alignParentRight =“true”和androID:layout_centerInParent =“true”等内容< item>没有效果.

有任何想法吗?

我的目标是AndroID 4.0及以上版本:

<uses-sdk androID:minSdkVersion="14" androID:targetSdkVersion="19" />
解决方法 好吧,我找到了一个方法:

在onCreateOptionsMenu()中,在标准菜单膨胀之后,设置
用于SearchVIEw实例的Renvity.RIGHT为ActionBar.LayoutParams

@OverrIDepublic boolean onCreateOptionsMenu(Menu menu) {            MenuInflater inflater = getMenuInflater();    inflater.inflate(R.menu.main_activity_actions,menu);    // ...    // Find the SearchVIEw; make it aligned to right,also in expanded mode:    MenuItem item = menu.findItem(R.ID.action_search);    SearchVIEw search = (SearchVIEw) item.getActionVIEw();    search.setLayoutParams(new Actionbar.LayoutParams(Gravity.RIGHT));}

(在菜单定义XML中,我仍然使用androID:showAsAction =“ifRoom | collapseActionVIEw”.)

现在,SearchVIEw将在右侧,图标所在的同一位置打开,并且自定义图标仍在使用中.

总结

以上是内存溢出为你收集整理的android – 如何在ActionBar的右侧保留扩展的SearchView(使用自定义图标时)?全部内容,希望文章能够帮你解决android – 如何在ActionBar的右侧保留扩展的SearchView(使用自定义图标时)?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1134930.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-30
下一篇2022-05-30

发表评论

登录后才能评论

评论列表(0条)

    保存