public class MainActivity extends FragmentActivity {
private RadioGroup radioGroup;
private RadioButton radioButton_homepage,radioButton_guowuyuan,radioButton_zhengwudating;
private ViewPager viewpager;
// private List<Fragment> arraylist;
private List<Fragment> arraylist;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
viewpager = findViewById(R.id.viewPage);
radioGroup = findViewById(R.id.radioGroup);
radioButton_homepage = findViewById(R.id.radio1);
radioButton_guowuyuan = findViewById(R.id.radio2);
radioButton_zhengwudating = findViewById(R.id.radio3);
arraylist = new ArrayList<>();
arraylist.add(new FragmentOne());
arraylist.add(new FragmentTwo());
arraylist.add(new FragmentThree());
viewpager.setAdapter(new FragmentPagerAdapter(getSupportFragmentManager()) {
@Override
public Fragment getItem(int position) {
return arraylist.get(position);
}
@Override
public int getCount() {
return arraylist.size();
}
});
// 小圆点
/* viewpager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
}
@Override
public void onPageSelected(int position) {
switch (position){
case 0:
radioGroup.check(R.id.radio1);
break;
case 1:
radioGroup.check(R.id.radio2);
break;
case 2:
radioGroup.check(R.id.radio3);
break;
default:
break;
}
}
@Override
public void onPageScrollStateChanged(int state) {
}
});*/
//Fragment页面的切换
radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
switch (checkedId){
case R.id.radio1:
viewpager.setCurrentItem(0);
// if (int i=0;i<ra){
radioButton_homepage.setBackgroundColor(Color.RED);
// }
break;
case R.id.radio2:
viewpager.setCurrentItem(1);
radioButton_guowuyuan.setBackgroundColor(Color.RED);
break;
case R.id.radio3:
viewpager.setCurrentItem(2);
radioButton_zhengwudating.setBackgroundColor(Color.RED);
break;
default:
break;
}
}
});
}
}
apadter
public class MyAdapter extends BaseAdapter {
private Context context;
private List<News.DataBean> list;
public MyAdapter(Context context, List<News.DataBean> list) {
this.context = context;
this.list = list;
}
@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;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
MyViewHolder holder ;
if (convertView == null){
holder = new MyViewHolder();
convertView = View.inflate(context,R.layout.list_list,null);
holder.textView_title = convertView.findViewById(R.id.text_title);
holder.textView_topTime = convertView.findViewById(R.id.text_toptime);
holder.imageView_headImg = convertView.findViewById(R.id.image_img);
convertView.setTag(holder);
}else {
holder = (MyViewHolder) convertView.getTag();
}
holder.textView_title.setText(list.get(position).getTitle());
//holder.textView_topTime.setText((int) list.get(position).getTopTime());
//holder.imageView_headImg.setImageBitmap(list.get(position).getHeadImg());
return convertView;
}
class MyViewHolder{
TextView textView_title,textView_topTime;
ImageView imageView_headImg;
}
}
fragment
public class FragmentOne extends Fragment {
private View view;
private ViewPager viewPagerF;
private ListView lv;
private ImageView iv;
private String path = "http://www.yulin520.com/a2a/forum/allTypeList?sign=376C5BFC22179A1B8FF3A86D4588B29F&pageSize=10&ts=1877785007&forumType=0&page=1";
private MyHandler handler = new MyHandler();
/*private Handler handler = new Handler(){
@Override
public void handleMessage(Message msg) {
switch (msg.what){
case 0:
Bitmap bitmap = (Bitmap) msg.obj;
iv.setImageBitmap(bitmap);
// List<News.DataBean> list = (List<News.DataBean>) msg.obj;
//打印一下
//Log.i("TAG",list.size()+"");
//MyAdapter myAdapter = new MyAdapter(getActivity(), list);
// lv.setAdapter(myAdapter);
}
super.handleMessage(msg);
}
};*/
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
if(view == null){
view = inflater.inflate(R.layout.fragmentone,container,false);
}
ViewGroup parent = (ViewGroup)view.getParent();
if(parent != null){
parent.removeView(view);
}
lv = view.findViewById(R.id.list_one);
// 开启一个子线程
getJsonData();
return view;
}
private void getJsonData() {
new Thread(new Runnable() {
@Override
public void run() {
try {
URL url = new URL(path);
HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
//网络设置
urlConnection.setRequestMethod("GET");
urlConnection.setConnectTimeout(10000);//响应时间
urlConnection.setReadTimeout(10000);//读取时间
//判断状态码
if (urlConnection.getResponseCode() == 200){//SteamTostString
InputStream inputStream = urlConnection.getInputStream();
String string = SteamToString(inputStream);
/*ByteArrayOutputStream bos = new ByteArrayOutputStream();
byte[] b=new byte[1024];
int len =0;
while ((len=inputStream.read(b))!=-1){
bos.write(b,0,len);
}
inputStream.close();
bos.close();
String json = bos.toString();
*/
//进行gson解析
Gson gson = new Gson();
News n = gson.fromJson(string, News.class);
List<News.DataBean> lisy = n.getData();
Message message = new Message();
message.what = 0;
message.obj = lisy;
handler.sendMessage(message);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}).start();
}
private String SteamToString(InputStream inputStream) throws Exception {
InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
BufferedReader reader = new BufferedReader(inputStreamReader);
String string = "";
StringBuilder builder = new StringBuilder();
while ((string=reader.readLine())!=null){
builder.append(string);
}
return builder.toString();
}
class MyHandler extends Handler{
@Override
public void handleMessage(Message msg) {
switch (msg.what){
case 0:
List<News.DataBean> list = (List<News.DataBean>) msg.obj;
//打印一下
Log.i("TAG",list.size()+"");
MyAdapter myAdapter = new MyAdapter(getActivity(), list);
lv.setAdapter(myAdapter);
}
super.handleMessage(msg);
}
}
}
main
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="com.bwie.wang.moniti.MainActivity">
<android.support.v4.view.ViewPager
android:id="@+id/viewPage"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="9"
>
</android.support.v4.view.ViewPager>
<RadioGroup
android:id="@+id/radioGroup"
android:layout_weight="1"
android:layout_width="match_parent"
android:layout_height="0dp"
android:orientation="horizontal"
>
<RadioButton
android:id="@+id/radio1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:button="@null"
android:gravity="center"
android:background="@drawable/ain"
android:text="首页"
android:checked="true"
android:padding="8dp"
/>
<RadioButton
android:id="@+id/radio2"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:button="@null"
android:gravity="center"
android:background="@drawable/guowuyuan"
android:text="国务院"
android:padding="8dp"
/>
<RadioButton
android:id="@+id/radio3"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:button="@null"
android:gravity="center"
android:background="@drawable/zhengwudating"
android:text="政务大厅"
android:padding="8dp"
/>
</RadioGroup>
</LinearLayout>