什么是有效的&;使用android可绘制形状的结构化方式?
我需要在我的项目中使用不同设计的几个按钮。所以我使用可绘制的形状来定制按钮 假设我需要一个圆角和绿色背景的按钮。所以我创建了一个“gree\u round\u button.xml”形状,这个效果很好。但是我需要另一个样式相同的按钮,只是背景颜色不同,所以我必须创建另一个xml文件,比如“colorName\u round\u button.xml” 为了便于理解,我将其保持简单,但对于不同的按钮可能有许多共同的样式,可能只是一个或两个属性不同。是否有任何方法可以跳过为同一设计创建多个文件?是否有任何方法,我可以用来扩展任何形状,可以通过颜色,背景颜色作为参数? 可能像这个“button.xml”这个形状将接受一个颜色参数,我可以将这个形状用于我想要使用的每个按钮,并将不同的颜色作为参数传递 在Web Css中:我可以这样做什么是有效的&;使用android可绘制形状的结构化方式?,android,xml,android-background,android-shape,Android,Xml,Android Background,Android Shape,我需要在我的项目中使用不同设计的几个按钮。所以我使用可绘制的形状来定制按钮 假设我需要一个圆角和绿色背景的按钮。所以我创建了一个“gree\u round\u button.xml”形状,这个效果很好。但是我需要另一个样式相同的按钮,只是背景颜色不同,所以我必须创建另一个xml文件,比如“colorName\u round\u button.xml” 为了便于理解,我将其保持简单,但对于不同的按钮可能有许多共同的样式,可能只是一个或两个属性不同。是否有任何方法可以跳过为同一设计创建多个文件?是否
.button {border: 1px solid #ddd;border-radius:5px;padding:20px;}
.button.green {background:green;}
有什么简单的方法可以做这样的事情吗。
谢谢。你应该看一下背景色。这将允许你使用相同的可绘制图案,但可以用不同的颜色覆盖 例如,你可以有一个bg_circle.xml,它是一个白色的圆圈。然后使用“淡色”更改其颜色,并将单独的图标作为src
<ImageButton
android:layout_width="75dp"
android:layout_height="75dp"
android:src="@drawable/ic_check_mark"
android:background="@drawable/bg_circle"
android:backgroundTint="@color/red"
/>
你应该看看背景色,这将允许你使用相同的可拉丝,但覆盖不同的颜色 例如,你可以有一个bg_circle.xml,它是一个白色的圆圈。然后使用“淡色”更改其颜色,并将单独的图标作为src
<ImageButton
android:layout_width="75dp"
android:layout_height="75dp"
android:src="@drawable/ic_check_mark"
android:background="@drawable/bg_circle"
android:backgroundTint="@color/red"
/>
你可以
扩展视图
并传递你想要的任何颜色参数。我一定会查出来的。谢谢你可以扩展视图
并传递你想要的任何颜色参数。我一定会查出来的。谢谢你,非常感谢你的解释。刚刚把它标上了正确的答案:)非常感谢你的精彩解释。只是把它标对了答案:)