在xml中绘制图像视图

时间:2010-08-09 17:00:15

标签: android android-widget

你可以通过分享你在如何在android中的图像上绘制一个小矩形的知识来帮助我。 我有main.xml,还有一些小部件。在顶部,有一个图像,我想在该图像上绘制一个矩形,并在应用程序运行时显示。

以下是我的xml文件的样子:

   <?xml version="1.0" encoding="utf-8"?>
    <TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_margin="5px" android:padding="20px">
     <ImageView
    android:id="@+id/myImageView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:src="@drawable/sinewave"/>
    <TableRow>


    </TableRow>

    <TableRow>    
            <TextView android:text="00:00" 
                android:id="@+id/TextView02" 
                android:layout_width="wrap_content" 
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:paddingBottom="30dip"

                android:gravity="center">
            </TextView>      
    </TableRow>
    <TableRow android:gravity="center">

            <Button android:text="Start" 
                    android:id="@+id/btnStart" 
                    android:layout_width="wrap_content" 
                    android:layout_height="wrap_content" 
                    android:padding="20px"
                    >
            </Button>



            <Button android:text="Stop" 
                    android:id="@+id/btnStop" 
                    android:layout_width="wrap_content"  
                    android:layout_height="wrap_content" 
                    android:padding="20px"
                    >
            </Button>

    </TableRow>
    <TableRow>
            <TextView android:text=""
                android:id="@+id/TextView01"
                android:layout_width="wrap_content" 
                android:layout_height="wrap_content"
                android:paddingLeft="5px"
android:paddingRight="5px"
android:paddingTop="10px"
android:paddingBottom="10px"

                >
            </TextView>

     </TableRow>
    <TableRow>   
            <Button android:text="Mute Phone" 
                    android:id="@+id/Button01" 
                    android:layout_width="wrap_content" 
                    android:layout_height="wrap_content"
                    android:gravity="center"
                    android:paddingBottom="10dip"
                >
            </Button>
    </TableRow>
    <TableRow>
            <Button 
                android:text="Settings"
                android:id ="@+id/btnClick"
                android:layout_width="wrap_content" 
                android:layout_height="wrap_content"
                android:gravity="center"
                android:paddingTop="30dip"
            />
    </TableRow>

</TableLayout>

2 个答案:

答案 0 :(得分:3)

请勿使用标准ImageView。创建自己的类扩展View。然后覆盖draw()方法。在那里,您可以显示图像并完成所需的所有操作,包括绘制矩形。

答案 1 :(得分:0)

你可以使用ImageView ...我实际上已经在我的一个应用程序中完成了这一点。然后你可以覆盖OnDraw()方法,该方法传入一个可以用来绘制的画布...

我用它作为参考: Draw onto an ImageView