我正在开发一个应用程序,我想在另一个用户touch.please帮助我的图像上添加图像

时间:2014-01-16 05:29:35

标签: android

public boolean onTouch(View v, MotionEvent event)
          {
              if (event.getAction() == MotionEvent.ACTION_DOWN)
              {
                  int x = (int) event.getX() ;
                  int y = (int) event.getY();
                  System.out.println("xxx");
                release=(ImageView)findViewById(R.id.imageView2);
                  RelativeLayout.LayoutParams lp =new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT); //Assuming you use a RelativeLayout

                  ImageView iv=new ImageView(getApplicationContext());

                  System.out.println("YYYY");
                  lp.setMargins(x,y,0,0);

                  System.out.println("aaaa");
                 iv.setLayoutParams(lp);
                  System.out.println("bbbbb");
                  iv.setImageDrawable(getResources().getDrawable(R.drawable.pain_icon));
                  System.out.println("ccccc");


       ((ViewGroup)v).addView(release);


              }

        return true;

          }

2 个答案:

答案 0 :(得分:0)

您尚未将动态创建的视图添加到您的父级。首先声明你的父亲并使用relativeLayout.addView(iv)将此iv(你的代码中的imageview)添加到父亲;

答案 1 :(得分:0)

我猜你在这里,因为你不发布错误。

R.id.imageView2很可能有一个父级,并且您正在尝试将其添加到另一个视图组。那是什么导致错误。您需要创建一个新的ImageView实例,然后将其添加到您的视图组

ImageView im = new ImageView(this);
im.setImageResource(R.drawable.nameofimage);

((ViewGroup)v).addView(im);