在布局外拖动时,ImageView正在调整大小

时间:2013-12-06 02:55:42

标签: android android-layout

我正在创建一个在图片上添加图片/剪贴画的Android应用程序。每次我在布局的右侧和底部拖动图像视图时,它会自动调整图像大小。

这是示例场景:

当我拖动剪贴画outide(布局的顶部和左侧)时,它不会调整图像大小但会剪切图像(ClipArt1),但每次我将图像拖到布局的右侧和底部时,它自动调整大小,它不会超出布局。

+-----------------------------+
|     * ClipArt*              |
|     *    1   *              |
|     **********              |
|                             |
|            *********        |
|            *ClipArt*        |
|            *   2   *        |
|            ********* ****** |
|                      * CA3* |
|                      ****** |
+-----------------------------+

这是我的XML布局:

 <LinearLayout
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="0.61"
    android:orientation="horizontal" >

    <RelativeLayout
        android:id="@+id/imgstage"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:tag="stage" >

            <ImageView
            android:id="@+id/imgView"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_alignParentLeft="true"
            android:layout_alignParentTop="true"
            android:src="@drawable/tap" />

    </RelativeLayout>

</LinearLayout>

1 个答案:

答案 0 :(得分:0)

如果这不正确,请原谅我 - 我过去经历过这一点。我的解决方案是将动态容器的根元素切换为固定大小的RelativeLayout ......这有用吗?

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="0.61"
    android:orientation="horizontal" >

    <RelativeLayout
        android:id="@+id/imgstage"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:tag="stage" >

            <ImageView
            android:id="@+id/imgView"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignParentTop="true"
            android:src="@drawable/tap" />

    </RelativeLayout>

</LinearLayout>