今天我遇到了一个问题:
在我的自定义布局中,在此LinearLayout内的TextView之后有一个带有灰色背景的LinearLayout和ToggleButton。 切换按钮具有透明背景。 但在android Lollipop这里是不必要的影子。 我试过了elevation = 0dp属性。但这确实解决了我的问题。
当我设置api = 21
时会发生这种情况
在旧的apis上发生这种情况< 21
以下是示例布局:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="45dp"
android:orientation="horizontal"
android:background="@color/grey_light">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="0123" />
<ToggleButton
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:background="@android:color/transparent"
android:button="@android:color/transparent" />
</LinearLayout>
如何删除此影子?
答案 0 :(得分:24)
尝试使用style="@android:style/Widget.Holo.Button.Borderless
将小部件更改为appcompat(或您正在使用的任何内容)。
我正在使用它:
style="?android:attr/borderlessButtonStyle"
答案 1 :(得分:2)
ToggleButton使用随附的状态列表动画器管理其高程和translationZ。您可以通过设置禁用它:
android:stateListAnimator="@null"
或通过提供自己的选择器来处理这些值:
android:stateListAnimator="@drawable/my_selector"