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

MaterialButton样式的shapeAppearance不起作用

基础概念

MaterialButton 是 Android 中用于实现 Material Design 风格按钮的组件。shapeAppearance 属性用于自定义按钮的形状,包括圆角大小、边框等。

相关优势

  • 自定义形状:允许开发者根据设计需求自定义按钮的形状,提升用户体验。
  • 一致性:在应用中使用统一的形状样式,有助于保持界面的一致性。

类型

shapeAppearance 可以设置的类型包括:

  • ShapeAppearanceModel
  • MaterialShapeDrawable

应用场景

适用于需要自定义按钮形状的应用场景,例如:

  • 按钮需要特定的圆角大小。
  • 按钮需要边框效果。
  • 按钮需要与其他 UI 元素保持一致的形状。

问题原因及解决方法

问题原因

shapeAppearance 不起作用可能有以下几种原因:

  1. 版本兼容性问题:使用的 MaterialButton 版本不支持 shapeAppearance 属性。
  2. 样式冲突:其他样式覆盖了 shapeAppearance 的设置。
  3. 初始化问题shapeAppearance 属性未正确初始化。

解决方法

  1. 检查版本兼容性: 确保使用的 MaterialButton 版本支持 shapeAppearance 属性。可以在 build.gradle 文件中检查依赖版本:
  2. 检查版本兼容性: 确保使用的 MaterialButton 版本支持 shapeAppearance 属性。可以在 build.gradle 文件中检查依赖版本:
  3. 避免样式冲突: 确保没有其他样式覆盖了 shapeAppearance 的设置。可以在 styles.xml 中定义样式:
  4. 避免样式冲突: 确保没有其他样式覆盖了 shapeAppearance 的设置。可以在 styles.xml 中定义样式:
  5. 然后在布局文件中应用该样式:
  6. 然后在布局文件中应用该样式:
  7. 正确初始化: 确保 shapeAppearance 属性已正确初始化。可以在代码中设置:
  8. 正确初始化: 确保 shapeAppearance 属性已正确初始化。可以在代码中设置:

参考链接

通过以上步骤,应该可以解决 shapeAppearance 不起作用的问题。

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

相关·内容

为什么我样式不起作用

问题描述:在一个react父子组件demo中,实际效果与书写样式不太一样。 问题复现 直接上代码描述问题: 1....还有一个Child子组件,红底黑字。 那么实际渲染出样式是什么样子呢。如下图: ? 实际看到效果确实蓝底白字与红底白字,为什么与写代码有出入呢。...打开调试工具,看到子组件被渲染成一个Child 但是样式却被父组件样式给覆盖变成了白色, 原因:这是因为在w3c 规范中,CSS 始终是「全局...在传统 web 开发中,最为头痛莫过于处理 CSS 问题。因为全局性,明明定义了样式,但就是不生效,原因可能是被其他样式定义所强制覆盖。...最后 文章首发于:为什么我样式不起作用? 参考:浏览器渲染原理与过程 参考:CSS选择器从右向左匹配规则 DEMO地址

4.2K20
  • Vue webpack打包后,css样式发生改变或不起作用

    标签上添加scoped属性,就表示它样式作用于当下模块,样式私有化目的就不会相互污染啊!...一.css样式发生改变 scoped属性: 1)加了scoped属性组件,可以维护当前组件样式不受其它组件影响 2)加了scoped属性父级组件,不能修改子组件元素样式...(无路子组件加没属性scoped,因为scoped只能维护当前组件元素) 3)不加scoped属性父级组件,可以修改子组件样式 4)加了scoped属性父级组件,也可以强行控制加了scoped属性子组件...,方法是:.a >>> .b或者css预处理中 .a /deep/ 二.css样式不起作用 原因: 1.使用了webpack2语法规则不正确; webpack2要求必须写-loader; 2.可能是只写了...css-loader; 没写style-loader则build文件会生成,但你会发现页面中js不起作用; 没写css-loader则会直接报错:’You may need an appropriate

    5.1K30

    currentstyle 织梦_织梦channel标签currentstyle样式无效不起作用

    大家好,又见面了,我是你们朋友全栈君。 我们在用织梦系统制作网站时,经常会用到channel标签来调子栏目。...1、解决channel标签currentstyle样式无效不起作用错误方法 代码如下: {dede: type=’son’ typeid=’12’ currentstyle=” ~typename~...“} [field:typename/] {/dede:channel} 解决办法:把typeid=‘12’改为channel=‘1’ (文章模型id),首页除外,其他页面不需要指定typeid...2、解决channel标签currentstyle样式无效不起作用正确方法 修改include/taglib/channel.lib.php 把 if( (row[‘id’]==typeid || (...id’] || (topid==row[‘id’] && type==’top’) ) && 笔者经测试这种调用方式currentstyle有效,可以解决解决channel标签currentstyle样式无效不起作用问题

    6.4K10

    Android Material UI控件之ShapeableImageView

    这种方式不能通过给定默认方式做到。   使用了matrix,效果如下 ? 以上为基本用显示用法 1.样式使用 样式就是在Style中新建即可,比如 <!...⑧ 头像图片 头像常规就是一个圆形,然后外边有一个边框。圆形样式之前已经写了,那么只需要边框就可以了。边框就更简单了。...样式解读 你以为这就完了吗?当然木有,我相信从上述使用过程中,你已经知道怎么设置相应样式来显示效果了,但是还是得说明一下,各个样式代表意思,那么去哪里看呢?当然是源码啦。...shapeAppearance ShapeableImageView外观形状样式,需要设置Style。...shapeAppearance设置为圆角,shapeAppearanceOverlay设置为圆形,结果显示就是圆形,你要是不信邪,就自己也是试一下。 说到样式,也要详细说一下: ?

    2.3K41

    关于MaterialButton你需要知道

    MaterialButton 官网占楼,下面是个人使用总结 MaterialButton官方文档 首先肯定是导包 implementation 'com.google.android.material...圆角和着色以及宽高都奏效 我是应用主题后MaterialButton 此时出现几个坑 你会发现你设置宽高属性并没有应用到MaterialButton控件上,就连你为他backgroundTint...这是由于系统自身为MaterialButton控件设置了默认属性,所以你操作其实并不会生效 那么我们就要覆写这些属性,让MaterialButton控件由我们管控 在res→values→styles.xml...MaterialButton控件一样被系统默认着色成灰色 我是应用主题前CheckBox,正常白色 我是应用主题前CheckBox 我是应用主题后CheckBox,被系统着色成灰色 我是应用主题后...CheckBox 到这里需要注意点就都介绍完了,MaterialButton可以用起来了,不过要注意这些细节呦!

    89630

    Android ShapeableImageView使用详解,告别shape、三方库

    ,在不写shape、不引入三方库情况下,还是挺容易实现预期效果,而且扩展性良好。...,需要用到app:shapeAppearance,后面会说 cornerFamily 角处理方式,rounded圆角,cut裁剪 cornerSize 圆角大小 圆 <com.google.android.material.imageview.ShapeableImageView...外观样式 shapeAppearanceOverlay 同上,叠加层 扩展 前面为了整体排版,埋了几个伏笔,下面来一一解答。...ShapeableImageView形状外观覆盖样式参考。 前面可以看到我们设置圆角其实是用style,那为什么不直接用attrs呢,不是更加直观方便吗,带着疑问来看看源码是怎么处理。... 又引用了一个style,继续看ShapeAppearance.MaterialComponents.MediumComponent这个style <style name="<em>ShapeAppearance</em>.MaterialComponents.MediumComponent

    1.9K10

    Android Material UI控件之MaterialButton

    也就是说完全是这个MaterialButton锅,而且你xml也只是设置为宽高和文字而已,没理由会崩溃啊。...哦豁,原来是样式问题,那就不是什么大问题了。那么怎么解决呢?...Color 表示这个图标的颜色,如果下拉框里面没有你满意颜色,你可以通过右边输入框来手动设置颜色,很方便。 Theme 很明显这是主题样式,只能选择下拉框里面的主题样式。...其实一般Button也有这个点击效果,但是如果要修改这个水波纹颜色会麻烦一些,需要通过样式来设置才行,但是MaterialButton可以直接修改这个水波纹颜色。比如我这里改成绿色。...总结 好了到这里MaterialButton基本上用法就差不多了,也满足你用基本需求了,你要是还想加一些花里胡哨骚操作可以再对这个MaterialButton进行进一步继承封装。OK,就到这里了。

    3.3K20

    【Flutter 专题】62 图解基本 Button 按钮小结 (二)

    和尚继续尝试 Flutter 基本按钮;今天和尚学习 MaterialButton 系列相关 Button;该系列以 MaterialButton 为父类,衍生出 RaisedButton...高度,但 shape 按钮形状却不适用;其父类 RawMaterialButton 却正常;和尚尝试网上大神处理方式是外层依赖 Material 并需要 clip 裁切成 shape 样式;有待进一步学习...,和尚准备同时对两类 Button 进行尝试,比较两者不同; 案例尝试 和尚首先尝试最基本 RaisedButton / FlatButton 可点击和不可点击样式; // 可点击 RaisedButton...clipBehavior = Clip.none, // 抗锯齿剪切效果 Widget child, }) 分析源码可知,OutlineButton 与其他两种按钮略有不同,强调边框样式属性且无长按...若按钮有样式设置,依赖 Container 也要设置相同 shape 样式; var height = 5.0; Container( decoration: BoxDecoration(

    1.3K41

    听说你们家NotifyDataSetChanged不起作用

    千钧一发之际,用了一个笨方法,每次刷新时候重新setAdapter一下算是实现了基本功能,但是这样显然效率不高,数据很多时候容易卡顿。...当时时间紧也就没有对问题作过多了解,现在回过头来对NotifyDataSetChanged无效问题进行分析。...数据源更新了,但是指向了新引用 3. adapter没有收到消息通知 我出现问题在于原因2,接下来讲讲原因2解决方法。 解决方法 ?...数据获取代码 从上图可以看到我将获取到数据传入一个列表对象,然后直接以引用方式将列表对象传给数据源,这时候数据源指向了新内存空间,而adapter依然从原来内存空间挖数据,所以导致不论刷新多少次数据...不以引用方式传递数据 我们解决方法就是,不以引用方式传递数据。既然我们用是List,那么我们就可以调用Listclear()和addAll()方法,如此便可以解决我们遇到问题。

    1.8K20

    神经网络不起作用37个理由

    但是其中一些比其他更有可能被防范。我通常从以下简短清单开始,作为紧急第一反应: 1. 从一个已知适用于这类数据简单模型开始(例如,图像VGG)。如果可能,使用标准损失。 2....有很多网络无法学习不好标签。手动检查一批输入样本,看看标签是否正常。 截止点是有争议,因为有论文使用50%损坏标签使MNIST准确度达到50%以上。...20.调整损失权重 如果损失由几个较小损失函数组成,请确保它们相对于每个损失函数大小是正确。这可能需要测试不同损失权重组合。 21....给它时间 也许你网络在开始做出有意义预测之前需要更长时间来训练。如果你损失在稳步下降,就再训练更多时间。 32....尝试不同优化器 你选择优化器不应该阻止你网络进行训练,除非你选择了特别糟糕超参数。然而,合适任务优化器有助于在最短时间内获得最多训练。该论文指出你正在使用算法应该指定优化器。

    77300

    WordPress中jQuery库不起作用相关问题

    如果仅仅加载WordPress 自带jQuery 库,在使用一些jQuery 插件时候明明是代码没有错误,但就是不起作用,该有的效果不能实现;但加载了原版jQuery 库却又可以了,这样一来却同时加载了两个...$ 代替jQuery 写法不能识别,一些功能不起作用原因正是由此而来。...貌似WordPress 默认是加载自带jQuery 库,首先你要取消这个功能,使之在前台默认不加载自带jQuery 库: 打开/wp-includes/script-loader.php文件,以“...更新:如果查看源代码分享加载了WordPress 自带jquery 库,那么肯定是主题或者插件加载(非登录状态下),因此,按照下面的代码可予以取消(其实就开发而言,不建议这么做): 你主题也可能加载也会加载...接下来就是改用官方或者第三方jQuery 库,请直接参考: 《为你WordPress 选择最佳第三方jQuery 库》 我的话是两个都用上。

    4K60
    领券