Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/179.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 更新图像的位置_Android_Xml_Layout - Fatal编程技术网

Android 更新图像的位置

Android 更新图像的位置,android,xml,layout,Android,Xml,Layout,嗨,我对Android绘图还不太熟悉。 我正在寻找一种最简单的方法来执行以下操作: 更改已放置在起始x、y位置的图像的位置 可能布局有背景图像等,我有一个框架布局,用xml中的占位符定义 我发现了一些可能与投掷或拖动运动图像有关的问题 我只需要一个基本的设置,在这里我的代码生成x,y的值,然后我只是将图像转换为 它的新位置包含这些x、y值。 i、 e.翻译图像(x,y); 我发现大多数项目在处理手势、动画等方面都很复杂 在我的主xml布局中有以下基本框架布局: <FrameLayout

嗨,我对Android绘图还不太熟悉。 我正在寻找一种最简单的方法来执行以下操作:

  • 更改已放置在起始x、y位置的图像的位置
  • 可能布局有背景图像等,我有一个框架布局,用xml中的占位符定义
  • 我发现了一些可能与投掷或拖动运动图像有关的问题
  • 我只需要一个基本的设置,在这里我的代码生成x,y的值,然后我只是将图像转换为 它的新位置包含这些x、y值。 i、 e.翻译图像(x,y); 我发现大多数项目在处理手势、动画等方面都很复杂

    在我的主xml布局中有以下基本框架布局:

    <FrameLayout  
       android:id="@+id/graphics_holder"  
       android:layout_height="170px"  
       android:layout_width="match_parent"
    
       >
    
    
    

    谢谢

    试试这样的方法:

    FrameLayout myView = (FrameLayout) findViewById(R.id.graphics_holder);  
    
    int toX = 50; // change these
    int toY = 100;
    LayoutParams lp = (LayoutParams) myView.getLayoutParams();
    lp.leftMargin = toX;
    lp.topMargin = toY;
    myView.setLayoutParams(lp);
    myView.layout(toX, toY, 0, 0); // might be unnecessary
    

    感谢您的回复,那么我是否应该删除xml中的FrameLayout,只使用您通过编程获得的内容,还是可以在xml中添加LayoutParams来代替FrameLayout?不,您不需要删除xml中的FrameLayout。我的代码用于在不使用动画的情况下更改图像的位置。只需将toX和toY替换为所需的值。myView在哪里定义?在视图设置中,我移动的图像在哪里定义?为了更具体,我在回答中添加了更多的代码。据我所知,你的图像在你的显卡盒里。还是要在FrameLayout中移动图像?那么我会推荐一个相对的。在这种情况下,必须使用ImageView myView=(ImageView)findViewById(R.id.myimageview)