tip*_*ipu 6 android android-actionbar
看到这里的问题,灰色复选框从操作栏的顶部和底部留下空间:

styles.xml
<resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="CustomActionBarTheme" parent="Theme.Base.AppCompat.Light">
<item name="android:windowContentOverlay">@null</item>
<item name="android:actionButtonStyle">@style/ActionButtonStyle</item>
</style>
<!--<style name="ActionButtonStyle" parent="@android:style/Widget.Holo.Light.ActionButton">-->
<style name="ActionButtonStyle" >
<item name="android:height">@dimen/abc_action_bar_default_height</item>
<item name="android:layout_height">@dimen/abc_action_bar_default_height</item>
</style>
Run Code Online (Sandbox Code Playgroud)
我这样设置项目:
getMenuInflater().inflate(R.menu.submit_action, menu);
Run Code Online (Sandbox Code Playgroud)
submit_action看起来像:
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item android:id="@+id/action_submit"
android:icon="@drawable/check"
app:showAsAction="always" />
</menu>
Run Code Online (Sandbox Code Playgroud)
最后,附件是使用的@ drawable/check.

任何想法我怎么能得到支票填补行动栏?
您的图标未填充的ActionBar原因ActionMenuItemView是图标的测量方式。
该ActionMenuItemView调用的最大尺寸32dp时,设置范围为你的图标
因此,您的图像有多大差异很大,系统将始终调整其大小。
知道如何让支票填满操作栏吗?
你应该为你的 使用一个动作布局MenuItem,一个没有背景的复选标记图标,并在你认为合适的时候更改动作布局父级的背景颜色。下面是一个例子:
布局
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
style="?android:attr/actionButtonStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#e8e8e8"
android:clickable="true"
android:contentDescription="@string/cd" >
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:contentDescription="@null"
android:scaleType="centerInside"
android:src="@drawable/ic_action_tick" />
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)
菜单项
<item
android:id="@+id/action_submit"
android:actionLayout="@layout/your_action_layout"
android:showAsAction="always"/>
Run Code Online (Sandbox Code Playgroud)
无障碍
确保您MenuItem可以访问很重要。通常,当您长按ActionBar短中的某个项目时,Toast会为您显示内容描述,但是当您使用自定义时,则由MenuItem您来实现此模式。一个简单的方法是使用Roman Nurik 的 CheatSheet。如果您不确定如何使用它,您应该参考我在此处的回答,其中详细介绍了有关创建自定义MenuItem布局的内容。
或者
如果您想为MenuItem您拥有的每个人使用该背景颜色,您可以创建一个自定义样式并使用该android:actionButtonStyle属性应用它。这是一个例子:
你的风格
<style name="Your.ActionButton" parent="@android:style/Widget.Holo.Light.ActionButton">
<item name="android:background">#e8e8e8</item>
</style>
Run Code Online (Sandbox Code Playgroud)
你的主题
<style name="Your.Theme" parent="@android:style/Theme.Holo.Light">
<item name="android:actionButtonStyle">@style/Your.ActionButton</item>
</style>
Run Code Online (Sandbox Code Playgroud)
结果

| 归档时间: |
|
| 查看次数: |
5267 次 |
| 最近记录: |