0

我需要在 ImageView 中间绘制一个矩形来创建一个 CostumeCheckBox。我是 Android 新手,我不知道要这样做。ImageView/CostumeCheckbox 有一个边框:

protected void onDraw(Canvas canvas) {
    super.onDraw(canvas);

    Rect rect = new Rect();
    Paint paint = new Paint();
    paint.setStyle(Paint.Style.STROKE);        
    paint.setColor(CheckboxBorderColor);        
    paint.setStrokeWidth(borderWidth);
    getLocalVisibleRect(rect);
    canvas.drawRect(rect, paint); }
4

2 回答 2

0

尝试这个 :

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/relativeLayout1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:background="@drawable/ic_launcher"
    android:gravity="center" >

    <CheckBox
        android:id="@+id/checkBox1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

</RelativeLayout>

作为参考,请检查我对更苗条问题的回答:如何将复选框绑定到图像

于 2013-09-05T10:21:38.253 回答
0

如果在 imageview 上使用常规复选框对您来说是一个可行的解决方案,您可以将它们都放在 FrameLayout 中。不需要自己画checkbox,可以在xml中添加:

<FrameLayout>
    <ImageView .../>
    <CheckBox .../>
</FrameLayout>

FrameLayout 中元素的顺序定义了 Z-Order,最后一个元素在顶部。在此处查看 FrameLayout:

http://developer.android.com/reference/android/widget/FrameLayout.html

于 2013-09-05T10:23:58.117 回答