기본적으로 Layout을 지정하는 XML파일에 <ScrollView>태그를 사용하면 화면을 벗어나는
영역을 볼 수 있도록 수직 스크롤이 생성된다.
수평 스크롤을 생성하기 위해서는 <HorizontalScrollView>태그를 사용하여
<ScrollView>태그를 감싸주어야 한다.
이미지를 원본크기(화면크기 이상)로 불러와 스크롤을 생성하는 소스예시는 아래와 같다.
layout.xml
NewActivity.java
public class NewActivity extends Activity {
ScrollView scrollView;
ImageView imageView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.new_activity);
// layout.xml에 정의한 스크롤 뷰, 이미지뷰, 버튼객체 생성
scrollView = (ScrollView)findViewById(R.id.scrollView01);
imageView = (ImageView)findViewById(R.id.imageView01);
Button button = (Button)findViewById(R.id.newBtn01);
// 이미지 리소스를 얻어오기 위한 Resources객체 생성
Resources res = getResources();
BitmapDrawable bitmap = (BitmapDrawable)res.getDrawable(R.drawable.test);
// getIntrinsicWidth()메서드를 통해 이미지의 실제 가로, 세로길이 얻어오기
int width = bitmap.getIntrinsicWidth();
int height = bitmap.getIntrinsicHeight();
// 이미지 뷰 출력 후 getLayoutParams()메서드로 객체 로드 후 실제 길이지정
// Default는 hdpi로 지정되어 있음.
imageView.setImageDrawable(bitmap);
imageView.getLayoutParams().width = width;
imageView.getLayoutParams().height = height;
}
}
'Android > Develop' 카테고리의 다른 글
| [Android-Develop] 위젯 - 텍스트 뷰(Text View) (0) | 2015.01.01 |
|---|---|
| [Android-Develop] 프레임 레이아웃(Frame Layout) (0) | 2014.12.31 |
| [Android-Develop] setLayoutParams() & getLayoutParams() (0) | 2014.12.31 |
| [Android-Develop] 공간가중치(Linear_weight) (0) | 2014.12.31 |
| [Android-Develop] Gravity & Layout_gravity (정렬) (0) | 2014.12.31 |