javadi3d
چهارشنبه 03 اردیبهشت 1393, 23:09 عصر
سلام من یک لیست شخصی سازی شده ساختم حالا میخوام مثلا آیتم 5و9 لیست ظاهرشون کلا فرق داشته باشه و از یک xml دیگه ظاهر سازی بشن
باید چه کرد ؟
اینم آداپتر لیستم:
public class FaslhaAdapter extends ArrayAdapter<Faslha> {
List<Faslha> faslha;
Context c;
public FaslhaAdapter(Context c, List<Faslha> faslha) {
super(c, android.R.id.content, faslha);
this.c = c;
this.faslha = faslha;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// laye mun ro tarif mikonim
LayoutInflater vi = (LayoutInflater) c
.getSystemService(Context.LAYOUT_INFLATER_SERVICE) ;
View view = vi.inflate(R.layout.itemlistmain, null);
Faslha fasl = faslha.get(position);
TextView tvDastan = (TextView) view.findViewById(R.id.itm_namDastan);
tvDastan.setText(fasl.getOnvan());
// pas in vase inke fav has ya na
if (fasl.getFav() == 0) {
// yani gae fav nabud
ImageView img = (ImageView) view.findViewById(R.id.itm_isfav1);
int imageResource = c.getResources().getIdentifier("itm_nofav1",
"drawable", c.getPackageName());
img.setImageResource(imageResource);
}
/// yeki dige ham vase khande shode ya na
if (fasl.getKhande() == 0) {
// yani gae khande shode nabud
ImageView img = (ImageView) view.findViewById(R.id.itm_issee1);
int imageResource = c.getResources().getIdentifier("itm_nosee1",
"drawable", c.getPackageName());
img.setImageResource(imageResource);
}
return view;
}
}
این هم coustomadapter:
public class CustomAdapter extends BaseAdapter{
String [] result;
Context context;
int [] imageId;
DBAdapter db;
List<Faslha> faslha;
private static LayoutInflater inflater=null;
public CustomAdapter(MainActivity mainActivity, String[] prgmNameList, int[] prgmImages) {
// TODO Auto-generated constructor stub
result=prgmNameList;
context=mainActivity;
imageId=prgmImages;
inflater = ( LayoutInflater )context.
getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}
public CustomAdapter(Search search, String[] prgmNameList, int[] prgmImages) {
// TODO Auto-generated constructor stub
result=prgmNameList;
context=search;
imageId=prgmImages;
inflater = ( LayoutInflater )context.
getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}public CustomAdapter(ShowFaslha showfaslha, String[] prgmNameList, int[] prgmImages) {
// TODO Auto-generated constructor stub
result=prgmNameList;
context=showfaslha;
imageId=prgmImages;
inflater = ( LayoutInflater )context.
getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}
public CustomAdapter(Setting setting, String[] prgmNameList, int[] prgmImages) {
// TODO Auto-generated constructor stub
result=prgmNameList;
context=setting;
imageId=prgmImages;
inflater = ( LayoutInflater )context.
getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return result.length;
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
public class Holder
{
TextView tv;
ImageView img;
}
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
Holder holder=new Holder();
View rowView;
rowView = inflater.inflate(R.layout.itemlistslidemenu, null);
holder.tv=(TextView) rowView.findViewById(R.id.show_faslha);
holder.img=(ImageView) rowView.findViewById(R.id.show_share);
holder.tv.setText(result[position]);
holder.img.setImageResource(imageId[position]);
return rowView;
}
}
اگه چیزه دیگه ای لازمه بگید تا توضیح بدم.....
باید چه کرد ؟
اینم آداپتر لیستم:
public class FaslhaAdapter extends ArrayAdapter<Faslha> {
List<Faslha> faslha;
Context c;
public FaslhaAdapter(Context c, List<Faslha> faslha) {
super(c, android.R.id.content, faslha);
this.c = c;
this.faslha = faslha;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// laye mun ro tarif mikonim
LayoutInflater vi = (LayoutInflater) c
.getSystemService(Context.LAYOUT_INFLATER_SERVICE) ;
View view = vi.inflate(R.layout.itemlistmain, null);
Faslha fasl = faslha.get(position);
TextView tvDastan = (TextView) view.findViewById(R.id.itm_namDastan);
tvDastan.setText(fasl.getOnvan());
// pas in vase inke fav has ya na
if (fasl.getFav() == 0) {
// yani gae fav nabud
ImageView img = (ImageView) view.findViewById(R.id.itm_isfav1);
int imageResource = c.getResources().getIdentifier("itm_nofav1",
"drawable", c.getPackageName());
img.setImageResource(imageResource);
}
/// yeki dige ham vase khande shode ya na
if (fasl.getKhande() == 0) {
// yani gae khande shode nabud
ImageView img = (ImageView) view.findViewById(R.id.itm_issee1);
int imageResource = c.getResources().getIdentifier("itm_nosee1",
"drawable", c.getPackageName());
img.setImageResource(imageResource);
}
return view;
}
}
این هم coustomadapter:
public class CustomAdapter extends BaseAdapter{
String [] result;
Context context;
int [] imageId;
DBAdapter db;
List<Faslha> faslha;
private static LayoutInflater inflater=null;
public CustomAdapter(MainActivity mainActivity, String[] prgmNameList, int[] prgmImages) {
// TODO Auto-generated constructor stub
result=prgmNameList;
context=mainActivity;
imageId=prgmImages;
inflater = ( LayoutInflater )context.
getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}
public CustomAdapter(Search search, String[] prgmNameList, int[] prgmImages) {
// TODO Auto-generated constructor stub
result=prgmNameList;
context=search;
imageId=prgmImages;
inflater = ( LayoutInflater )context.
getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}public CustomAdapter(ShowFaslha showfaslha, String[] prgmNameList, int[] prgmImages) {
// TODO Auto-generated constructor stub
result=prgmNameList;
context=showfaslha;
imageId=prgmImages;
inflater = ( LayoutInflater )context.
getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}
public CustomAdapter(Setting setting, String[] prgmNameList, int[] prgmImages) {
// TODO Auto-generated constructor stub
result=prgmNameList;
context=setting;
imageId=prgmImages;
inflater = ( LayoutInflater )context.
getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return result.length;
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
public class Holder
{
TextView tv;
ImageView img;
}
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
Holder holder=new Holder();
View rowView;
rowView = inflater.inflate(R.layout.itemlistslidemenu, null);
holder.tv=(TextView) rowView.findViewById(R.id.show_faslha);
holder.img=(ImageView) rowView.findViewById(R.id.show_share);
holder.tv.setText(result[position]);
holder.img.setImageResource(imageId[position]);
return rowView;
}
}
اگه چیزه دیگه ای لازمه بگید تا توضیح بدم.....