我关注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>
....并希望以编程方式创建相同的形状,以便我可以在运行时自由更改颜色。我怎样才能实现它?非常感谢提前
答案 0 :(得分:1)
查看android.graphics.drawable.ShapeDrawable类和Shape类子类,例如:
ShapeDrawable在构造函数中接收一个形状,然后你有很多函数来修改形状。此外,您可以检索与ShapeDrawable相关联的Paint,以便您可以更改颜色等内容。
另外,看看这个小例子:
http://www.edumobile.org/android/android-tutorial/shape-drawing-example-in-android/
你可以看到一些不同的形状,以及一些像CornerPathEffect那样的效果,
答案 1 :(得分:0)
使用shaperawable,gradientdrawable with
http://developer.android.com/reference/android/graphics/CornerPathEffect.html