반응형
안녕하세요. 돼지왕 왕돼지입니다.
오늘은 GridView ( 그리드 뷰 )를 sample code 와 함께 알아보겠습니다.
그리드 뷰 ( Grid View ) 가 뭐고?
: 2차원의 표 형태로 출력하는 ListView의 일종입니다.
<attributes>
<attributes>
numColumns = "integer" : integer 갯수의 열
= "auto_fit" : 자동 계산
verticalSpacing & horizontalSpacing : 항목들간의 간격
columnWidth : 항목 하나의 폭
stretchMode = "columnWidth"
: columnWidth에 맞춘다. (가득 채운다.)
: columnWidth에 맞춘다. (가득 채운다.)
: 열 내부에 여백이 있을 때 여백을 어떻게 처리할 것인가?
Sample Code
<layout>
<GridView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/grid"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="10dp"
android:verticalSpacing="10dp"
android:horizontalSpacing="10dp"
android:numColumns="auto_fit"
android:columnWidth="60dp"
android:stretchMode="columnWidth"
android:gravity="center"/>
<java>
GridView grid = (GridView)findViewById(R.id.grid);
ImageAdapter adapter = new ImageAdapter(this);
grid.setAdapter(Adapter);
grid.setOnItemClickListener(new OnItemClickListener(){
public void onItemClick(AdapterView<?> parent, View view, int position, long id){
// To Do
}
}
class ImageAdapter extends BaseAdapter{
context con;
int[] picture = {R.drawable.a, R.drawable.b, R.drawable.c};
public ImageAdpater(Context c){con = c; }
public int getCount(){ return 100; }
public Object getItem(int position){ return picture[position%3]; }
public long getItemId(int position){ return position; }
public View getView(int position, View convertView, ViewGroup parent){
ImageView imageView;
if(convertView == null){
imageView = new ImageView(mContext);
imageView.setLayoutParams(new GridView.LayoutParams(45, 45));
imageView.setAdjustViewBounds(false);
imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
imageView.setPadding(8, 8, 8, 8);
}
else{
imageView = (ImageView) convertView;
}
imageView.setImageResources(picture[position % 3]);
return imageView;
}
}
로그인 없이 추천 가능합니다. 손가락 꾸욱~
반응형
'프로그래밍 놀이터 > 안드로이드, Java' 카테고리의 다른 글
[Android/안드로이드] Custom View ( 커스텀 뷰 ) 만드는 방법. (0) | 2012.02.28 |
---|---|
[Android/안드로이드] Gallery ( 갤러리 ) sample code. (0) | 2012.02.28 |
[Android/안드로이드] Spinner ( 스피너 ) 에 대해 알아봅니다. ( with sample code ) (0) | 2012.02.28 |
[Android/안드로이드] Editable 은 무엇인가? (0) | 2012.02.28 |
[Android/안드로이드] Spannable 너는 뭐 하는 녀석이냐? (0) | 2012.02.28 |
댓글