偶然发现,当android 5.0在按如下方式使用ImageButton时,会有自带的阴影,如图:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center"
    android:orientation="vertical" >

    <ImageButton
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/ic_launcher" />

</LinearLayout>
View Code

解决方法就把android:src="@drawable/ic_launcher"改成 android:background="@drawable/ic_launcher"效果如图:

原因就是ImageButton继承ImageView,并加载了一个默认样式:

public ImageButton(Context context, AttributeSet attrs) {
this(context, attrs, com.android.internal.R.attr.imageButtonStyle);
}

posted on 2016-10-18 20:41  Shark_Li  阅读(2862)  评论(0编辑  收藏  举报