我想像下面那样画画,
我能够在两个不同的xml文件中创建Rectangle和Triange形状。但我想联合他们制作这样的抽奖。
答案 0 :(得分:1)
使用<layer-list/>
。
这是一个例子。
在项目目录中Drawable
的{{1}}文件夹中,
制作res
文件并将其命名为xml
,并将其粘贴到代码下方作为您的要求。
您还可以在示例中的layerlist.xml
标记中添加您的shape drawable而不是drawable。并使用此xml作为<item/>
的背景。
ImageView
以下是使用<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<bitmap android:src="@drawable/android_red"
android:gravity="center" />
</item>
<item android:top="10dp" android:left="10dp">
<bitmap android:src="@drawable/android_green"
android:gravity="center" />
</item>
<item android:top="20dp" android:left="20dp">
<bitmap android:src="@drawable/android_blue"
android:gravity="center" />
</item>
</layer-list>
。
我希望它可以帮助你...
答案 1 :(得分:1)
使用layer-list
制作此自定义形状drawable
。
<强> /res/drawable/custom_shape.xml:强>
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Transparent Rectangle -->
<item>
<shape android:shape="rectangle">
<size
android:width="300dp"
android:height="60dp" />
<solid android:color="@android:color/transparent" />
</shape>
</item>
<!-- Colored Rectangle -->
<item
android:bottom="20dp">
<shape android:shape="rectangle">
<size
android:width="300dp"
android:height="60dp" />
<solid android:color="#9A8585" />
</shape>
</item>
<!-- Bottom Triangle -->
<item
android:left="80dp"
android:right="120dp"
android:top="0dp"
android:bottom="30dp">
<rotate android:fromDegrees="45">
<shape android:shape="rectangle">
<solid android:color="#9A8585" />
</shape>
</rotate>
</item>
<!-- Top Border -->
<item
android:bottom="75dp">
<shape android:shape="rectangle">
<solid android:color="#EFC1B3" />
</shape>
</item>
</layer-list>
使用:强>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/custom_shape"/>
<强>输出:强>
希望这会有所帮助〜
答案 2 :(得分:0)
我希望您需要Tabular
导航器或ViewPager
。我的建议是
1)在所有情况下使用矩形作为背景。
2)为未选择的项目创建相同的三角形可绘制但具有背景颜色(白色或透明)。
3)创建一个包含所有项目的三角形背景的视图
4)根据选择状态
手动setVisibility
三角形视图