我有一个从Internet收集的示例。

public class MprojectActivity extends Activity {
    /** Called when the activity is first created. */
    ImageView itan2;


    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);


        itan2=(ImageView)findViewById(R.id.imageView18);

        itan2.setOnTouchListener( new OnTouchListener() {

            @Override
            public boolean onTouch(View v, MotionEvent event) {
                // TODO Auto-generated method stub


           if(event.getAction()==MotionEvent.ACTION_MOVE){

               RelativeLayout.LayoutParams mParams = (RelativeLayout.LayoutParams) itan2.getLayoutParams();

                    int x =(int)  event.getRawX();
                    int y =(int)  event.getRawY();

                    mParams.leftMargin =  x-236;
                    mParams.topMargin =  y-565;
                    itan2.setLayoutParams(mParams);


           }
                return true;
            }
        });

                  }

}


在这个例子中,我用x和y减去236和565,这些值实际上是什么?如何通过动态编码找到它们?

最佳答案

它用于创建相对布局,没有什么复杂的,这非常简单。

x-236表示您要在x轴236单位上设置一个远离屏幕左上方的点。
y-565表示您要在y轴565单位上设置一个远离屏幕左上方的点。

通过使用这两个值和左上角的值(0,0),您正在创建一个布局来显示图像(在此示例中为itan2)

07-22 14:30