0
私はアンドロイド開発の初心者です。私はgridViewを作成し、そのアダプタを作成しました。このグリッドビューをフラグメントで使用しています!私は2つの文字列の配列である私のフラグメント内のサーバーからデータを取得、私はどのように私のgridviewで表示するために私のアダプタのデータを使用できますか?ありがとうございます。 アダプタでデータを使用してGridViewに表示するにはどうすればよいですか?
String[] gridViewPicture;
String[] gridViewText;
//some codes to get my data from server
gridViewText[i] =jsonArray.getJSONObject(i).get("name").toString();
gridViewPicture[i] =jsonArray.getJSONObject(i).get("picture").toString();
これは、GridViewのための私のアダプタです:
class GridItem{
int imageSource;
String Text;
GridItem(int imageSource,String text)
{
this.imageSource=imageSource;
this.Text=text;
}
}
public class MyGridViewAdapter extends BaseAdapter {
ArrayList<GridItem> list;
Context context;
public MyGridViewAdapter(Context context){
this.context=context;
list = new ArrayList<GridItem>();
Resources contextResources = context.getResources();
String[] foodText= {"text1","text2","text3"}; //this is the text that should change and get it from server
int[] image={R.drawable.first_slider_1min,R.drawable.first_slider_2min,R.drawable.first_slider_3min};//this is the image that should change and get it from server
for(int i=0;i<foodText.length;i++)
{
GridItem gridItem= new GridItem(image[i],foodText[i]);
list.add(gridItem);
}
}
@Override
public int getCount() {
return list.size();
}
@Override
public Object getItem(int position) {
return list.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
class ViewHolder{
ImageView myfoodImage;
TextView myfoodText;
ViewHolder(View view){
myfoodImage=(ImageView) view.findViewById(R.id.GridLayoutPhoto);
myfoodText=(TextView) view.findViewById(R.id.GridLayoutName);
}
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View row = convertView;
ViewHolder holder = null;
if(row==null)
{
LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
row= inflater.inflate(R.layout.grid_layout,parent,false);
holder = new ViewHolder(row);
row.setTag(holder);
}
else
{
holder = (ViewHolder) row.getTag();
}
GridItem myGridItem = list.get(position);
holder.myfoodText.setText(myGridItem.Text);
holder.myfoodImage.setImageResource(myGridItem.imageSource);
return row;
}
}
コードを投稿できますか?私たちはそれを助けることができるようにする必要があります – Deckerz