private ListView mF1Lv;
Handler handler = new Handler(){
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
if (msg.what==1){
List<Bean_sj.ListBean.ArticlesBean> articles = (List<Bean_sj.ListBean.ArticlesBean>) msg.obj;
//Toast.makeText(getActivity(),articles.get(0).getTitle(),Toast.LENGTH_LONG).show();
MyAdapter myAdapter = new MyAdapter(articles,getActivity());
mF1Lv.setAdapter(myAdapter);
}
}
};
try {
InputStream open = getActivity().getAssets().open("news.json");
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
byte[] b = new byte[1024];
int len = -1;
while ((len = open.read(b))!=-1){
outputStream.write(b,0,len);
}
String string = outputStream.toString();
//Log.i("xxx",string+"-------------------");
Gson gson = new Gson();
Bean_sj bean_sj = gson.fromJson(string, Bean_sj.class);
List<Bean_sj.ListBean.ArticlesBean> articles = bean_sj.getList().getArticles();
Toast.makeText(getActivity(),string,Toast.LENGTH_LONG).show();
Message message = new Message();
message.what = 1;
message.obj = articles;
handler.sendMessage(message);
} catch (IOException e) {
e.printStackTrace();
}
public class MyAdapter extends BaseAdapter{
private List<Bean_sj.ListBean.ArticlesBean> articles;
private Context context;
public MyAdapter(List<Bean_sj.ListBean.ArticlesBean> articles, Context context) {
this.articles = articles;
this.context = context;
}
@Override
public int getCount() {
return articles.size();
}
@Override
public Object getItem(int i) {
return null;
}
@Override
public long getItemId(int i) {
return 0;
}
@Override
public View getView(int i, View view1, ViewGroup viewGroup) {
ViewHolder viewHolder =null;
if (view1 == null){
viewHolder = new ViewHolder();
view1 = View.inflate(context, R.layout.item,null);
viewHolder.item_tv1 = view1.findViewById(R.id.item_tv1);
viewHolder.item_tv2 = view1.findViewById(R.id.item_tv2);
view1.setTag(viewHolder);
}else{
viewHolder = (ViewHolder) view1.getTag();
}
viewHolder.item_tv1.setText(articles.get(i).getTitle());
viewHolder.item_tv2.setText(articles.get(i).getDescription());
return view1;
}
class ViewHolder{
TextView item_tv1 ,item_tv2;
}
}