package com.example.work1.fragment;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ListView;
import android.widget.TextView;
import com.example.work1.R;
import com.example.work1.bean.Personbean;
import com.example.work1.bean.Workbean;
import com.google.gson.Gson;
import java.util.ArrayList;
import java.util.List;
public class Fragmentone extends Fragment {
public ListView listview;
public MyBase mybase;
public String urlString="http://api.expoon.com/AppNews/getNewsList/type/1/p/1";
public List<Personbean.DataBean> list=new ArrayList<Personbean.DataBean>();
public Handler handler=new Handler(){
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
if (msg.what==1){
String jj= (String) msg.obj;
Gson gson=new Gson();
Personbean fromJson=gson.fromJson(jj,Personbean.class);
list=fromJson.getData();
mybase.notifyDataSetChanged();
}
}
};
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view=inflater.inflate(R.layout.fragmentone,container,false);
listview=view.findViewById(R.id.listview);
mybase=new MyBase();
listview.setAdapter(mybase);
return view;
}
class MyBase extends BaseAdapter {
@Override
public int getCount() {
return list.size();
}
@Override
public Object getItem(int position) {
return null;
}
@Override
public long getItemId(int position) {
return 0;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
if (convertView==null){
holder=new ViewHolder();
convertView=View.inflate(getActivity(), R.layout.mybase,null);
holder.name1=(TextView) convertView.findViewById(R.id.basetext1);
holder.name2=(TextView) convertView.findViewById(R.id.basetext2);
holder.name3=(TextView) convertView.findViewById(R.id.basetext3);
convertView.setTag(holder);
}else {
holder= (ViewHolder) convertView.getTag();
}
holder.name1.setText(list.get(position).getNews_id());
holder.name2.setText(list.get(position).getNews_title());
holder.name3.setText(list.get(position).getNews_summary());
return convertView;
}
class ViewHolder{
TextView name1;
TextView name2;
TextView name3;
}
}
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
new Thread(
new Runnable() {
@Override
public void run() {
String backjson= Workbean.getjson(urlString);
Message message=handler.obtainMessage();
message.what=1;
message.obj=backjson;
handler.sendMessage(message);
}
}
).start();
}
}