[英]How can I programmatically create a shape in Android
我关注了myRec.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<item>
<shape>
<corners android:radius="1dp"
android:bottomRightRadius="0dp"
android:bottomLeftRadius="4dp"
android:topLeftRadius="4dp"
android:topRightRadius="0dp"/>
<stroke
android:color="@color/my_button_border"
android:width="1dp" />
<solid android:color="@android:color/transparent" />
</shape>
</item>
</selector>
....并希望以编程方式创建相同的形状,以便我可以在运行时自由更改颜色。 我该如何实现? 提前非常感谢
看一下android.graphics.drawable.ShapeDrawable类和Shape类的子类,例如:
ShapeDrawable在构造函数中接收一个形状,然后您就有很多函数可以修改形状。 另外,您可以检索与ShapeDrawable相关的Paint,以便可以更改颜色等内容。
另外, 看看这个小例子:
http://www.edumobile.org/android/android-tutorial/shape-drawing-example-in-android/
在这里您可以看到一些不同的形状以及一些效果,例如CornerPathEffect,
使用shapedrawable,gradientdrawable与
http://developer.android.com/reference/android/graphics/CornerPathEffect.html
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.