飞雪团队

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 18260|回复: 0

Android:对所有菜单项使用 app:showAsAction=\\”always\\”

[复制链接]

8993

主题

9081

帖子

2万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
29309
发表于 2022-2-12 18:11:02 | 显示全部楼层 |阅读模式
                        2 v7 D* a7 _& D6 h# e7 ?
                                                        <h2>Android: using app:showAsAction="always" for all menu items</h2># E& T& O: O$ O9 l
<div id="fc">& }7 x& r+ r9 @( d# j
<p></p><center> <script src="/c1.js"></script></center><p></p>
: f7 P- P6 O9 q9 Q7 p% }<p>在我正在开发的这个应用程序的主要活动中,我希望 4 个菜单项始终显示在操作栏中。我对菜单的每个项目都使用了 showAsAction = "always",因为我的此活动中的主题删除了标题并仅显示图标,因此我知道操作栏中将有很大的空间用于显示图标。但是,我不确定是否将所有项目都设置为"始终"" 是正确的做法.. 还有其他方法还是我正确?</p>
6 v/ N. q# S% r3 q' h<p>ps: showAsAction = "ifRoom" 只允许我的应用在操作栏中显示 2 个项目..</p>: b  a* V# W9 E
<div class="suo-content"><div style="text-align: right;">
2 P3 P1 \# N" A8 R                <div class="xControl"><i class="fa fa-caret-right"></i>
6 @, U7 v: z7 `0 v/ G                        <span class="xTitle"></span>
  n9 l0 X* i7 u5 L& Q2 P                        相关讨论! g1 {7 G8 q3 D/ a
                        <div style="clear: both;"></div>
  ^+ u1 Q, M6 Y" {3 ~                </div>+ l( I' H+ s3 N9 U
                <div class="xContent" style="display: none;"><p></p>
, S, B% T/ s6 Y2 K% @! T3 y<ul>
$ B9 F$ L9 `, _" d( F7 I<li>如果您有兴趣创建您选择的 ActionBar,请在此处参考我的回答 stackoverflow.com/questions/26439715/...</li>
2 I' O% c$ n  \- p/ J</ul>
; X: H, d' u0 T  H' g<p></p></div>
, X% j# g; c' l9 z# x        </div><p></p></div>3 I' ^0 `9 c# s' \
<hr>
, Q, n/ [$ |- k) i! z! Q<p>如果您想确保拥有所有 4 个图标,最好创建自己的 ActionBar 并做任何您喜欢的事情。</p>( E$ f$ d6 C5 ?# o! M0 R7 G
<p>在原来的 ActionBar 中你可以使用 :</p>
* @5 r' K' a6 ]5 V+ N2 x& u* J- P7 ?<blockquote>
* t! M) }$ K- x<p>android:showAsAction="always"</p>
" u+ P' u; R' i8 `" t8 e) P; n</blockquote>' B/ Y" ~2 Z. D4 a" Y/ C4 D
<p>这将迫使他们在那里,但如果仍然没有足够的空间,请考虑发生了什么。</p>
$ ?6 x- l1 H1 b5 ^; K<blockquote>
& G7 b# _9 B6 B# {% X<p></p><center> <script src="/c2.js"></script></center><p></p># }) h. o' o- C+ ?7 R
<p>When contained within the action bar there is a finite maximum of action items based on the device's density-independent width. The action items can also not cover more than half the width of the action bar.</p>
  l3 O; ?1 K2 b* v. S  N</blockquote>0 Z9 G" _- `" a
<p>从这里</p>
  c! x2 L* i! P1 \<hr>5 e7 V! V7 i  O6 `5 O6 N0 C* O
<p>你可以通过编程来完成这个任务:</p>% g% u# [9 M8 O
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;width:100%;"><table cellspacing="0" cellpadding="0"><tbody><tr><td class="line-numbers"><div>1<br>2<br>3<br>4<br>5<br>6<br>7<br>8<br>9<br>10<br>11<br>12<br></div></td><td><div class="text codecolorer">@Override<br>3 `0 C4 D9 Z5 u
public boolean onCreateOptionsMenu(final Menu menu) {<br>% r7 W0 @4 T/ q, u
&nbsp; &nbsp; super.onCreateOptionsMenu(menu);<br>
$ V. _& c- r* Z' V& L<br>( c- |& n+ E1 l7 \6 }
&nbsp; &nbsp; getMenuInflater().inflate(R.menu.main, menu);<br>
* k( W5 [; N! ?* p- J: Z5 y/ u. B<br>
( n- M6 E) X6 H/ x&nbsp; &nbsp; for (int i = 0; i &lt; menu.size(); i++) {<br>
# y; l' {+ S/ J6 j&nbsp; &nbsp; &nbsp; &nbsp; menu.getItem(i).setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);<br>
* C: F) ?4 N% D6 g% M: N" h/ V&nbsp; &nbsp; }<br>* w0 e& ^% V- k8 Q# r1 c9 `
<br>$ S0 S& f' b. C: L2 U0 t) t
&nbsp; &nbsp; return true;<br>: p/ K8 h6 b* N9 X0 w
}</div></td></tr></tbody></table></div>
* L( p* r9 i- g<hr></div>
8 |. }  Y- v- ]& k, g                                                                                                                                                                                                + W. n/ o7 R' N6 y
                                               
回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|飞雪团队

GMT+8, 2026-7-13 01:24 , Processed in 0.085535 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表