首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Android:背景中有波纹和状态选择器的按钮:找不到资源异常

Android中,背景中有波纹和状态选择器的按钮是一种常见的UI设计元素,用于增强用户交互体验。当用户点击按钮时,按钮会显示波纹效果,同时根据按钮的不同状态(如按下、选中、禁用等),按钮的背景也会发生相应的变化。

这种按钮可以通过使用Android的Drawable资源和Selector来实现。具体步骤如下:

  1. 创建波纹效果的Drawable资源文件(ripple.xml):<ripple xmlns:android="http://schemas.android.com/apk/res/android" android:color="?android:attr/colorControlHighlight"> <item android:id="@android:id/mask"> <shape android:shape="rectangle"> <solid android:color="@android:color/white" /> </shape> </item> </ripple>这里的android:color="?android:attr/colorControlHighlight"表示使用系统主题中定义的波纹颜色。
  2. 创建状态选择器的Drawable资源文件(button_selector.xml):<selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@drawable/ripple" android:state_pressed="true" /> <item android:drawable="@drawable/ripple" android:state_focused="true" /> <item android:drawable="@drawable/ripple" android:state_selected="true" /> <item android:drawable="@drawable/ripple" android:state_activated="true" /> <item android:drawable="@drawable/normal" /> </selector>这里的@drawable/ripple表示按钮按下、获取焦点、选中、激活状态时显示波纹效果,@drawable/normal表示按钮正常状态下的背景。
  3. 在布局文件中使用该按钮:<Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/button_selector" android:text="按钮" />这里的android:background="@drawable/button_selector"将按钮的背景设置为状态选择器。

这种按钮可以广泛应用于各种Android应用场景,例如登录按钮、确认按钮、导航按钮等。

腾讯云提供了丰富的云计算产品,其中与Android开发相关的产品包括:

  1. 腾讯移动分析(https://cloud.tencent.com/product/mta):提供移动应用数据分析服务,帮助开发者了解用户行为、应用性能等。
  2. 腾讯移动推送(https://cloud.tencent.com/product/tpns):提供移动应用消息推送服务,支持Android和iOS平台。
  3. 腾讯移动直播(https://cloud.tencent.com/product/mlvb):提供高清、低延迟的移动直播解决方案,支持Android和iOS平台。

以上是腾讯云提供的一些与Android开发相关的产品,开发者可以根据具体需求选择适合的产品来辅助开发工作。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • Android Material UI控件之MaterialButton

    作为Android的开发者,常用控件肯定少不了按钮控件,常规的按钮控件,只能满足基本需求,而日常开发中,都会有渐变按钮,圆形按钮,或者立体按钮,这些都需要自己的设置样式,就拿圆角按钮来说,可能你会这是一个shape文件,然后设置背景和圆角的大小,最后在按钮的background属性中设置好,就是一个圆角的按钮了。这样就显得有些麻烦了,因为要你时碰到一个花里胡哨的UI和搞事情的产品,你就完犊子了。你会创建很多这样的drawable文件,并且每一个你还要命名规范,改起来是很费劲的。而MaterialButton就很好的帮你解决这些问题。让你的UI开发变得轻松一些。是骡子是马,牵出来溜溜,下面进入正文:

    02

    Android开发笔记(八十二)SDK版本兼容

    Android控件很多属性都有默认值,比如文字默认黑色、编辑框默认透明背景等等,但因为android是开源的,各厂商都会自行修修补补,所以很多时候默认值并不靠谱。举例如下: 1、在某些低版本的Android上,如不指定文字颜色textColor,则默认的文字颜色是白色; 2、编辑框有的默认透明背景加一根底线,有的默认白色圆角背景; 3、主题Theme.Holo默认是浅灰背景,但有的品牌手机上改成了深灰背景; 4、调用View的getDrawingCache方法对指定控件截图,默认背景是黑色,而不是我们在UI上看到的透明背景,是不是很惊讶?所以截图前要先设置好背景色。 所以,为了让app在不同设备上都是一样的显示风格,就得自己设置期望的各种属性值,另外也尽量不用系统自带的主题,如有可能自定义主题风格,这样即使设备厂商修改了默认属性值,app也仍然保持统一的风格。

    03
    领券