我不确定如果这种情况只发生在我身上,甚至发生在其他人身上,这就是正在发生的事情:
我设置了menu.xml,其中有四个图标
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
tools:context="com.ylg.default.Home">
<item
android:id="@+id/action_key"
android:icon="@drawable/key"
android:orderInCategory="9999999"
android:title="@string/lock"
app:showAsAction="always" />
<item
android:id="@+id/action_alert"
android:icon="@drawable/bell"
android:orderInCategory="9999999"
android:title="@string/alert_action"
app:showAsAction="always" />
<item
android:id="@+id/action_home"
android:icon="@drawable/home_tool"
android:orderInCategory="9999999"
android:title="@string/office"
app:showAsAction="always" />
<item
android:id="@+id/action_logo"
android:icon="@drawable/rupees"
android:orderInCategory="9999999"
android:title="@string/home"
app:showAsAction="always" />
</menu>
图标在Nexus 5上显示正确的涟漪效果,但问题是标题被剪切,因此我使用以下方式更改了我的风格图标(右和左)的填充值:
<style name="Theme.default" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:actionButtonStyle">@style/MyActionButtonStyle</item>
</style>
<style name="MyActionButtonStyle" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:minWidth">40dp</item>
<item name="android:paddingLeft">2dp</item>
<item name="android:paddingRight">2dp</item>
</style>
如果我把它放在一起,菜单图标会减少它们之间的间距,但是当我触摸图标时看不到涟漪效应。
我不确定为什么会这样?有谁可以帮我这个?
谢谢!
答案 0 :(得分:1)
您用于MyActionButtonStyle
的父母没有适当的背景。父母应为Widget.AppCompat.Light.ActionButton
。
<style name="MyActionButtonStyle" parent="Widget.AppCompat.Light.ActionButton">
但无论如何,减少菜单项之间的空间并不是一个好主意。相反,使用
app:showAsAction="ifRoom"
因此,不适合的项目将被溢出。这是必要的,因为总有一个较小的dp屏幕使得Nexus 5导致标题被剪切得更多。 lint should have warned you about this。