안드로이드 개발 질문/답변
(글 수 45,052)
gridview
package com.andro.gridviewproj;
gridview
import android.widget.BaseAdapter; import android.widget.ImageView; import android.content.Context; import android.view.View; import android.view.ViewGroup; import android.widget.GridView;
gridview
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;
}
public View getView(int position, View convertView, ViewGroup parent){
ImageView imageView;
if(convertView == null){
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;
}
private Integer[] mThumbIds={
R.drawable.pixel
};
}여기서 배열을 바꾸려면 어떻게 해야되나요? 패딩 수치를 조절하나요?? 가로 16 세로16으로 만들고싶은데요
pixel 이란 이미지를 한칸에 넣어서 그걸 16 16 표로 만들려고 합니다. pixel 이미지를 각 칸에 다 나오게 하려면 어떻게 하나요
현재 첨부한 캡쳐사진처럼 하나밖에 안나오네요
onclick
package com.andro.gridviewproj;
onclick
import android.app.Activity; import android.app.AlertDialog; import android.os.Bundle; import android.view.View; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.GridView;
onclick
public class GridViewActivity extends Activity implements OnItemClickListener{
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
GridView gridview = (GridView) findViewById(R.id.gridview);
gridview.setAdapter(new ImageAdapter(this));
gridview.setOnItemClickListener(this);
}
onclick
public void onItemClick(AdapterView<?> parent, View view,
int position, long id){
AlertDialog.Builder alert = new AlertDialog.Builder(GridViewActivity.this);
alert.setTitle("알림창");
alert.setMessage(position + "번째 이미지를 누르셨네요!");
alert.setIcon(R.drawable.icon);
alert.setPositiveButton("확인", null);
alert.show();
}
}그리고 그 piexel을 누르면 알림창을 안띄우고 다른 pixel 이미지로 대체되는 소스를 구성하고싶은데 어떻게 해야되나요




findViewById(R.id.gridview) 이 res의 속성을 android:numColumns="16" 으로 해보시겠어요?
그리고 총 그러면 16*x 의 grid가 생성이 될 것입니다.
image 갯수만 맞추면 원하시는 모양이 나올것 같은데...