2011-10-12 4 views
4

Bitmap 이미지가 포함 된 ImageView이 있습니다. 이미지는 컨테이너 크기의 두 배입니다. onScroll()Bitmap 이미지 주위를 이동할 수 있다고 선언했습니다. Bitmap 이미지에있는 ImageView의 좌표는 어떻게 얻을 수 있습니까?ImageView의 비트 맵 이미지 좌표를 두 배로 작게 가져옵니다.

Bitmap bm = BitmapFactory.decodeResource(getResources(), R.drawable.image); 
_iv.setImageBitmap(bm); 
_iv.setAdjustViewBounds(true); 
_iv.setMaxHeight(bm.getHeight()); 
_iv.setMaxWidth(bm.getWidth()); 
_iv.setScaleType(ImageView.ScaleType.CENTER); 

Bitmap newBm = Bitmap.createScaledBitmap(bm, bm.getWidth() * 2, bm.getHeight() * 2, true); 
_iv.setImageBitmap(newBm); 

답변

0

이 작업을 수행하는 실제 방법을 찾지 못했습니다. 사용 방법은 다음과 같습니다.

ImageView을 만들 때 알려진 위치로 스크롤하십시오.

int ivX = 0; 
int ivY = 0; 

_iv.invalidate(); 
_iv.scrollTo(ivX, ivY); 

이렇게하면 정확한 (x, y) 좌표를 얻을 수 있습니다. 그럼,이 onScroll() 방법을 구현하고 내 (X, Y)를 다시 계산 생성 된 거리를 사용했습니다 좌표

@Override 
public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY) { 
    //Add the scroll distance to the old X, Y coordinates 
    ivX += distanceX; 
    ivY += distanceY; 

    //Scroll to the new location 
    _iv.scrollTo(ivX, ivY); 

    return false; 
} //End onScroll() 

는 또한 어떻게 scrollTo() 작품의 더 나은 이해의 좌표 사이의 관계를 얻을 수 이미지와 컨테이너를 다른 광산으로 가져 가려면 link을 따르십시오.