android - 动态改变imageview的位置

时间:2010-11-30 06:15:03

标签: android layout dynamic

我目前正在使用矩阵方法来实现图像的拖放缩放(图像A)

现在我希望图像A的一部分可以点击,所以我将另一个图像视图(图像B)放在图像A上,并在xml文件中为它设置layout_margins。

我的问题是......有没有办法动态改变我的layout_margins,因为我正在缩放我的图像以进行拖拽缩放?

我想更简单的问题是......如何为imageview动态设置layout_margins?

<RelativeLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent" >

   <ImageView android:id="@+id/imageView"
     android:layout_width="fill_parent"
     android:layout_height="fill_parent"
     android:src="@drawable/map"
     android:scaleType="matrix" />

    <ImageView
       android:id="@+id/dundas_station"
       android:layout_width="75px"
       android:layout_height="75px"
       android:layout_marginTop="337px"
   android:layout_marginLeft="373px"
       android:clickable="true"
       android:src="@drawable/google_maps_icon"
       android:scaleType="matrix"
       />
</RelativeLayout>

谢谢!

2 个答案:

答案 0 :(得分:4)

使用以下代码段。别忘了导入 “android.widget.FrameLayout.LayoutParams”或边缘布局参数。

ImageView image;
LayoutParams params = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
params.setMargins(100,0, 0,0);

// OR
params.topMargin= 100;
image.setLayoutParams(params);

答案 1 :(得分:0)

您使用setMargins