بالاخره تونستم بنویسشم یا تعریف یک کلاس به این شکل
بعد داخل activiti استفاده کردم به این صورت
مشکل اینجاستکه کل عکس هارو نشون نمیده و عکس تکراری نشون میده؟؟؟؟
کد پیاچپی:
public class ImageAdapter extends BaseAdapter {
public View gridView;
public int position;
private Context mContext;
public Integer[] mThumbIds = {
R.drawable.bear,
R.drawable.cow,
R.drawable.dog,
R.drawable.dolphin,
R.drawable.duck,
R.drawable.elephant,
R.drawable.fish,
R.drawable.fox,
R.drawable.giraffe,
R.drawable.lion,
R.drawable.monkey,
R.drawable.mouse,
R.drawable.pig,
R.drawable.rabbit,
R.drawable.sheep,
R.drawable.snake,
R.drawable.zebra
};
public Integer[] mThumbIds2 = {
R.string.bear,
R.string.cow,
R.string.dog,
R.string.dolphin,
R.string.duck,
R.string.elephant,
R.string.fish,
R.string.fox,
R.string.giraffe,
R.string.lion,
R.string.monkey,
R.string.mouse,
R.string.pig,
R.string.rabbit,
R.string.sheep,
R.string.snake,
R.string.zebra
};
public ImageAdapter(Context c) {
mContext = c;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return mThumbIds.length;
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return mThumbIds[position];
}
@Override
public long getItemId(int arg0) {
// TODO Auto-generated method stub
return 0;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater inflater = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
if (convertView == null) {
gridView = new View(mContext);
// gereftane laye az custom_adapter.xml
gridView = inflater.inflate(R.layout.list_animal, null);
TextView textView = (TextView) gridView.findViewById(R.id.textView1);
textView.setText(mThumbIds2[position]);
ImageView imageView = (ImageView) gridView.findViewById(R.id.imageView1);
imageView.setImageResource(mThumbIds[position]);
} else {
gridView = (View) convertView;
}
return gridView;
}
}
بعد داخل activiti استفاده کردم به این صورت
کد پیاچپی:
public class AnimalActiviti extends Activity {
public MediaPlayer player;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.animal);
GridView grid = (GridView) findViewById(R.id.gridView1);
grid.setAdapter(new ImageAdapter(this));
grid.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int postition,
long id) {
if (postition == 0) {
player = MediaPlayer.create(AnimalActiviti.this, R.raw.a);
player.start();
// Animation animat = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.roteat);
// ImageView imageView = (ImageView) findViewById(R.id.imageView1);
// imageView.setAnimation(animat);
}
else if (postition == 1) {
player = MediaPlayer.create(AnimalActiviti.this, R.raw.b);
player.start();
}
}
});
}
}
مشکل اینجاستکه کل عکس هارو نشون نمیده و عکس تکراری نشون میده؟؟؟؟