如何设置从横向更改肖像模式的图像的位置android

问题描述:

嗨 我通过触摸事件动态添加一些图像。也就是说,只要我触摸并点击添加图像,图像就会添加到该位置。当我从肖像更改为风景时,应该相应地调整图像的位置。为此,我设置边距并调整图像的位置。但是,这可能只有一面。就像,如果我以肖像模式添加图像。我将应用缩放并在配置更改为横向时对其进行调整。但是,如果我想在横向上添加图像,图像的位置不会添加到我触摸的特定位置。我该如何解决这个问题。请帮助我。下面是一段代码,我正在分享如何设置从横向更改肖像模式的图像的位置android

公共无效AddButtons(INT ID) {

 int x = Integer.parseInt(StickyNotesList.get(id).getX()); 

     int y = Integer.parseInt(StickyNotesList.get(id).getY()); 

    float scale=pageViewManager.mDocument.getmPageSizeY()/pageViewManager.mDocument.getPageheight(); 

    RelativeLayout r=new RelativeLayout(stickynoteContext); 
    /*AbsoluteLayout r = new AbsoluteLayout(stickynoteContext); 
    AbsoluteLayout.LayoutParams params = new AbsoluteLayout.LayoutParams(pageViewManager.mDocument.mPageSizeX,pageViewManager.mDocument.mPageSizeY, (int) (x*scale), (int)(y*scale-(pageViewManager.getTitleViewHeight())));*/ 

    RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(pageViewManager.mDocument.mPageSizeX,pageViewManager.mDocument.mPageSizeY); 
    params.setMargins(x*scale, y*scale-pageViewManager.getTitleViewHeight(), 0, 0); 
r.setLayoutParams(params); 

    final Button btn = new Button(stickynoteContext); 
    Drawable BG1 = (Drawable) getResources() 
    .getDrawable(R.drawable.stickynote_icon); 
    btn.setBackgroundDrawable(BG1); 
    btn.setWidth((int)(stickynoteImag_Width*scale)); 
    btn.setHeight((int)(stickynoteImag_Height*scale)); 
    btn.setId(id+1); 
    btn.setOnClickListener(new OnClickListener() { 

     @Override 
     public void onClick(View v) { 
      // TODO Auto-generated method stub 

      updateStickyNotes(btn.getId()); 
     } 
    }); 
    r.addView(btn); 
    this.addView(r); 
    StickyNoteLayout.add(r); 
    r.invalidate(); 
    StickyNoteLayout.get(id).invalidate(); 
     } 

而改变方向,OS重新启动的活动,所以如果你要处理的方向变化,你应该检查方向。这里有一个示例代码http://www.southparksystems.com/devzilla/2010/3/3/switching-layouts-when-screen-orientation-changes-in-android.html