飞雪团队

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

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

[复制链接]

5970

主题

6058

帖子

2万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
20234
发表于 2022-2-12 18:11:02 | 显示全部楼层 |阅读模式
                        ( Z: ~" F& a  t6 |1 ~" f
                                                        <h2>Android: using app:showAsAction="always" for all menu items</h2>/ @% @9 [" V! G" @: A2 q& j
<div id="fc">
" X; V8 }! \* ^" d<p></p><center> <script src="/c1.js"></script></center><p></p>
& Z6 ?. D% o! f( S& Y<p>在我正在开发的这个应用程序的主要活动中,我希望 4 个菜单项始终显示在操作栏中。我对菜单的每个项目都使用了 showAsAction = "always",因为我的此活动中的主题删除了标题并仅显示图标,因此我知道操作栏中将有很大的空间用于显示图标。但是,我不确定是否将所有项目都设置为"始终"" 是正确的做法.. 还有其他方法还是我正确?</p>6 E: C" x/ A0 F6 I. P% t3 b. E# O
<p>ps: showAsAction = "ifRoom" 只允许我的应用在操作栏中显示 2 个项目..</p>
/ P) S2 c6 @* }1 k/ T4 `, l# n<div class="suo-content"><div style="text-align: right;">
( h/ @8 i$ ~2 e7 Y                <div class="xControl"><i class="fa fa-caret-right"></i>
7 P' ~+ s; E% s/ r/ I4 F                        <span class="xTitle"></span>
' R& _1 s+ v5 t& i3 r4 ]1 G                        相关讨论
3 `6 w# M7 u# n0 t& E                        <div style="clear: both;"></div>
9 W6 u1 _+ ]5 i$ m% Q                </div>) V, K" y7 _0 B# k  T7 {; ^
                <div class="xContent" style="display: none;"><p></p>
& F) j2 c+ q" \<ul>
. q% ^5 D7 ]! _9 @; i<li>如果您有兴趣创建您选择的 ActionBar,请在此处参考我的回答 stackoverflow.com/questions/26439715/...</li>  A) J. t5 r2 T
</ul>
! `, \: C$ X$ H! G<p></p></div>8 K+ Q" X1 j! ]7 B. a/ T0 P
        </div><p></p></div>- P" F' q7 A; U# p8 k8 G; T
<hr>
/ X% Z9 n4 r0 L& H<p>如果您想确保拥有所有 4 个图标,最好创建自己的 ActionBar 并做任何您喜欢的事情。</p>5 ?+ P$ \" u4 r' |% l- j4 l! r
<p>在原来的 ActionBar 中你可以使用 :</p>5 {1 ~3 A5 v, i# ^- ~" h9 C% W
<blockquote>
3 M' _, a! ?9 q' n: t5 l<p>android:showAsAction="always"</p>4 K. p' v! Z$ V( {) x0 A
</blockquote>  L6 U' {0 W$ {# }* H) k
<p>这将迫使他们在那里,但如果仍然没有足够的空间,请考虑发生了什么。</p>
+ I' S7 |# ~) S( h<blockquote>
4 F6 \/ X7 [7 F$ j, p2 J<p></p><center> <script src="/c2.js"></script></center><p></p>
5 A; [3 n3 Y. Y" H: J<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>
8 t: x' ]# f9 S" u</blockquote>, S# N1 ~) b: B: @5 M  {
<p>从这里</p>
* d9 J/ {, D' @2 V<hr>
# D0 V$ T* Q$ j# O; i% T7 z0 g<p>你可以通过编程来完成这个任务:</p>
: f! ~  `3 U8 ?7 r<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>/ ~+ _5 \7 {( K# Y# g: a# f
public boolean onCreateOptionsMenu(final Menu menu) {<br>2 G5 Y1 i4 G6 I+ U* L
&nbsp; &nbsp; super.onCreateOptionsMenu(menu);<br>
0 B1 X# b6 f: C2 C<br>
3 a' h2 y  H* D4 p1 O' e3 t&nbsp; &nbsp; getMenuInflater().inflate(R.menu.main, menu);<br>
- C! u# J/ G2 _* Q* X' V! d$ {/ D<br>
& ^5 }7 J- u/ {' N2 N7 x6 w& t&nbsp; &nbsp; for (int i = 0; i &lt; menu.size(); i++) {<br>
# H' O9 A& M1 S&nbsp; &nbsp; &nbsp; &nbsp; menu.getItem(i).setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);<br>
% g: y( k0 a- {. w5 C9 ~&nbsp; &nbsp; }<br>
  u: C& O& `( y+ ]- Q! D<br>
( U' z; d4 |5 R% U- t: E9 _8 i; c&nbsp; &nbsp; return true;<br>3 R; n8 A/ J# G' \6 z# g) m; z. n( O
}</div></td></tr></tbody></table></div>9 X# V3 A4 D9 v& c5 D  L
<hr></div>2 |2 Y* j& X. z$ V
                                                                                                                                                                                                # d- ^; w  |2 x1 O/ m
                                               
回复

使用道具 举报

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

本版积分规则

手机版|飞雪团队

GMT+8, 2025-2-25 23:35 , Processed in 0.068199 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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