public class Fragment01 extends Fragment {
private static final String TAG = "Fragment01----";
private final static int ERROR = 1;
private ListView listView;
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment01_layout, container, false);
listView = view.findViewById(R.id.fragment01_listview);
return view;
}
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
//4.获取网络数据
new Thread() {
@Override
public void run() {
try {
URL u = new URL(HttpConfig.ONE_URL);
HttpURLConnection connection = (HttpURLConnection) u.openConnection();
connection.setConnectTimeout(5000);
if (connection.getResponseCode() == 200) {
InputStream inputStream = connection.getInputStream();
//5.封装工具类
String json = CommenUtils.inputStream2String(inputStream);
//6.使用Handler,发送数据
Message message = myHandler.obtainMessage();
message.what = SUCCESS;
message.obj = json;
myHandler.sendMessage(message);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}.start();
}
class MyHandler extends Handler {
@Override
public void handleMessage(Message msg) {
switch (msg.what) {
case SUCCESS:
//成功
String json = (String) msg.obj;
Log.d(TAG, "handleMessage: " + json);
//导包Gson
Gson gson = new Gson();
LinkedList<NewsBean> list = gson.fromJson(json, listType);//7.根据接口,生成javabean
//8.书写Adapter进行显示
List<NewsBean.ItemBean> item = list.get(0).getItem();
MyAdapter myAdapter = new MyAdapter(getActivity(), item);
listView.setAdapter(myAdapter);
break;
}
}
}
}
private static final String TAG = "Fragment01----";
private MyHandler myHandler = new MyHandler();
//判断网络状态
private final static int SUCCESS = 0;private final static int ERROR = 1;
private ListView listView;
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment01_layout, container, false);
listView = view.findViewById(R.id.fragment01_listview);
return view;
}
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
//4.获取网络数据
new Thread() {
@Override
public void run() {
try {
URL u = new URL(HttpConfig.ONE_URL);
HttpURLConnection connection = (HttpURLConnection) u.openConnection();
connection.setConnectTimeout(5000);
if (connection.getResponseCode() == 200) {
InputStream inputStream = connection.getInputStream();
//5.封装工具类
String json = CommenUtils.inputStream2String(inputStream);
//6.使用Handler,发送数据
Message message = myHandler.obtainMessage();
message.what = SUCCESS;
message.obj = json;
myHandler.sendMessage(message);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}.start();
}
class MyHandler extends Handler {
@Override
public void handleMessage(Message msg) {
switch (msg.what) {
case SUCCESS:
//成功
String json = (String) msg.obj;
Log.d(TAG, "handleMessage: " + json);
//导包Gson
Gson gson = new Gson();
//如果json就是一个纯数组的解析方式
Type listType = new TypeToken<LinkedList<NewsBean>>(){}.getType();LinkedList<NewsBean> list = gson.fromJson(json, listType);//7.根据接口,生成javabean
//8.书写Adapter进行显示
List<NewsBean.ItemBean> item = list.get(0).getItem();
MyAdapter myAdapter = new MyAdapter(getActivity(), item);
listView.setAdapter(myAdapter);
break;
}
}
}
}