ShunXiangL的博客

兴趣是最好的老师

Android FrameLayout的android:foreground属性可以设置单击时的前景色

触摸之后,设置前景色,可以告诉用户确实单击了,增加用户体验。

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
             xmlns:tools="http://schemas.android.com/tools"
             android:id="@+id/category_item"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
             android:foreground="@drawable/selector_subtle"
             tools:ignore="UseCompoundDrawables">

    <ImageView
            android:id="@+id/category_icon"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginBottom="@dimen/size_avatar_toolbar"
            android:contentDescription="@string/category" />

    <TextView
            android:id="@+id/category_title"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="bottom"
            android:textAppearance="@style/Topeka.TextAppearance.CategoryItem"
            android:padding="@dimen/spacing_double" />

</FrameLayout>


drawable: selector_subtle.xml

<selector xmlns:android="http://schemas.android.com/apk/res/android"
        android:src="@drawable/selector_list" />


drawable-v21: selector_subtle.xml

点击的水波纹效果,
这样,touch事件触发的时候,就会有前景色了。

<ripple xmlns:android="http://schemas.android.com/apk/res/android"
        android:color="@color/touch_effect">
    <item android:id="@android:id/mask">
        <shape android:shape="rectangle">
            <solid android:color="@android:color/white" />
        </shape>
    </item>
</ripple>


参考:http://blog.csdn.net/jdsjlzx/article/details/13827993

阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/ShunXiangL/article/details/52357202
文章标签: android
个人分类: android
上一篇Android 中文API (33) —— Checkable
下一篇关于onDraw()方法不被执行的解决方法(setWillNotDraw)
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭