다음은 GridView를 이용해서 이미지를 출력한 모습입니다.
GridView에 관해서 안드로이드 개발자 사이트의 내용을 토대로 살펴봅니다.
1. 이클립스에서 다음과 같이 프로젝트를 생성합니다.
2. 다음 그림들을 바탕화면에 다운 받은 다음 왼쪽 프로젝트 탐색기의 res -> drawable-hdpi 폴더에 끌어다 놓습니다.
위의 그림들을 끌어다 놓으면 다음과 같이 됩니다.
3. 왼쪽 프로젝트 탐색기의 res -> layout -> main.xml 을 열어 다음 코드를 붙여넣기 합니다.
<?xml version="1.0" encoding="utf-8"?>
<GridView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/gridview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:numColumns="auto_fit"
android:verticalSpacing="10dp"
android:horizontalSpacing="10dp"
android:columnWidth="90dp"
android:stretchMode="columnWidth"
android:gravity="center"
/>
4. 왼쪽 탐색기에서 src -> my.HelloGridView -> HelloGridView.java 를 열어서 다음 코드를 붙여넣기 합니다.
package my.HelloGridView;
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.GridView;
import android.widget.ImageView;
public class HelloGridView extends Activity {
/** Called when the activity is first created. */
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
GridView gridview = (GridView) findViewById(R.id.gridview);
gridview.setAdapter(new ImageAdapter(this));
}
public class ImageAdapter extends BaseAdapter {
private Context mContext;
public ImageAdapter(Context c) {
mContext = c;
}
public int getCount() {
return mThumbIds.length;
}
public Object getItem(int position) {
return null;
}
public long getItemId(int position) {
return 0;
}
// create a new ImageView for each item referenced by the Adapter
public View getView(int position, View convertView, ViewGroup parent) {
ImageView imageView;
if (convertView == null) { // if it's not recycled, initialize some attributes
imageView = new ImageView(mContext);
imageView.setLayoutParams(new GridView.LayoutParams(85, 85));
imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
imageView.setPadding(8, 8, 8, 8);
} else {
imageView = (ImageView) convertView;
}
imageView.setImageResource(mThumbIds[position]);
return imageView;
}
// references to our images
private Integer[] mThumbIds = {
R.drawable.f1, R.drawable.f2,
R.drawable.f3, R.drawable.f4,
R.drawable.f5, R.drawable.f6
};
}
}
코드를 살펴보면 ImageAdapter 클래스(굵은 글씨로 표현된 부분)가 HelloGridView 클래스 내부에 추가로 정의 되어 있습니다.
private Integer[] mThumbIds = {
R.drawable.f1, R.drawable.f2,
R.drawable.f3, R.drawable.f4,
R.drawable.f5, R.drawable.f6
};
위 코드를 보면 mThumbIds 배열에 출력할 이미지들을 정의하고 있습니다. 위에서 res -> drawable-hdpi 폴더에 넣어둔 이미지들의 파일명을 사용했습니다.
5. CTRL + F11 로 실행합니다.
'Programming > Android' 카테고리의 다른 글
안드로이드 jack 빌드 에러 (0) | 2016.07.04 |
---|---|
이클립스에서 안드로이드 소스코드 연결해서 보기 (0) | 2011.09.01 |
에뮬레이터와 Socket 통신 (1) | 2011.07.06 |
android obfuscate(난독화) 사용하기. (1) | 2011.05.02 |
froyo 빌드 (0) | 2010.07.26 |