提问者:小点点

如何定义安卓上的圆形视图?


安卓上所有的视图类都是以矩形的形状定义的,当你触摸它的时候会在矩形区域中检测到,当你设置图像的时候它会填充矩形,如何制作一个默认为圆形的类呢?


共1个答案

匿名用户

在可绘制的包内创建一个形状。 //res/drawable/circle.xml

<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:innerRadius="0dp"
    android:shape="ring"
    android:thicknessRatio="1.9"
    android:useLevel="false" >
    <solid android:color="@android:color/transparent" />
    <stroke
        android:width="10dp"
        android:color="@android:color/white" />
</shape>

然后在drawable中创建一个层列表

    // res/drawable/img.xml

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >

    <item android:drawable="@drawable/circle"/>    
    <item android:drawable="@drawable/ic_launcher"/>

</layer-list>

然后用图层列表创建图像视图

<ImageView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:background="@drawable/img"/>