package com.zhoukao1.activity;
import android.os.Bundle;
import android.support.annotation.IdRes;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.support.v4.view.ViewPager;
import android.support.v7.app.AppCompatActivity;
import android.widget.RadioGroup;
import com.zhoukao1.R;
import com.zhoukao1.adapter.MyFragmentAdapter;
import com.zhoukao1.fragment.Fragment1;
import com.zhoukao1.fragment.Fragment2;
import com.zhoukao1.fragment.Fragment3;
import java.util.ArrayList;
import java.util.List;
import butterknife.Bind;
import butterknife.ButterKnife;
public class MainActivity extends FragmentActivity {
@Bind(R.id.view_pager)
ViewPager viewPager;
@Bind(R.id.radio_group)
RadioGroup radioGroup;
private ArrayList<Fragment> list;
private Fragment1 fragment1;
private Fragment2 fragment2;
private Fragment3 fragment3;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ButterKnife.bind(this);
//创建集合
list = new ArrayList<Fragment>();
//创建fragment
fragment1 = new Fragment1();
fragment2 = new Fragment2();
fragment3 = new Fragment3();
//把fragment加入集合
list.add(fragment1);
list.add(fragment2);
list.add(fragment3);
//创建适配器
MyFragmentAdapter adapter=new MyFragmentAdapter(getSupportFragmentManager(),list);
//添加到视频日期
viewPager.setAdapter(adapter);
//点击radiogroup进行监听
radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, @IdRes int checkedId) {
switch (checkedId){
case R.id.rb1:
viewPager.setCurrentItem(0);
break;
case R.id.rb2:
viewPager.setCurrentItem(1);
break;
case R.id.rb3:
viewPager.setCurrentItem(2);
break;
}
}
});
//viewpager监听
viewPager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
}
@Override
public void onPageSelected(int position) {
radioGroup.check(radioGroup.getChildAt(position).getId());
}
@Override
public void onPageScrollStateChanged(int state) {
}
});
}
}
package com.zhoukao1.adapter;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import android.view.View;
import java.util.List;
/**
* Created by 我 on 2018/7/7.
*/
public class MyFragmentAdapter extends FragmentPagerAdapter{
private List<Fragment> list;
public MyFragmentAdapter(FragmentManager fm, List<Fragment> list) {
super(fm);
this.list = list;
}
@Override
public Fragment getItem(int position) {
return list.get(position);
}
@Override
public int getCount() {
return list.size();
}
}
package com.zhoukao1.fragment;
import android.content.Context;
import android.content.DialogInterface;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.support.v4.view.ViewPager;
import android.support.v7.app.AlertDialog;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.ListView;
import android.widget.Toast;
import com.google.gson.Gson;
import com.zhoukao1.R;
import com.zhoukao1.adapter.MyAdapter;
import com.zhoukao1.adapter.MyPagerAdapter;
import com.zhoukao1.bean.Student;
import java.io.ByteArrayOutputStream;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import java.util.ArrayList;
import java.util.List;
/**
* A simple {@link Fragment} subclass.
*/
public class Fragment1 extends Fragment {
private ListView list_view;
private ViewPager view_pagera;
Handler handler=new Handler(){
private List<Student.DataBean> data;
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
if (msg.what==0){
int i = view_pagera.getCurrentItem();
i++;
view_pagera.setCurrentItem(i);
handler.sendEmptyMessageDelayed(0,1000);
}else {
if (msg.what == 1) {
String json = (String) msg.obj;
Gson gson = new Gson();
Student student = gson.fromJson(json, Student.class);
data = student.getData();
Log.i("aaa", data.toString());
//创建适配器
MyAdapter adapter = new MyAdapter(getActivity(), data);
list_view.setAdapter(adapter);
list_view.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
@Override
public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
//createDialog(position);
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setTitle("内容");
builder.setMessage(data.get(position).getContent()+data.get(position).getCreateTime()+data.get(position).getPhone());
builder.setNegativeButton("暂不更新",null);
builder.setPositiveButton("立即更新", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(getActivity(), "没有版权", Toast.LENGTH_SHORT).show();
}
});
builder.show();
return false;
}
});
}
}
}
};
public Fragment1() {
// Required empty public constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View view = inflater.inflate(R.layout.fragment1, container, false);
list_view = (ListView) view.findViewById(R.id.list_view);
view_pagera = (ViewPager) view.findViewById(R.id.view_pagera);
return view;
}
//逻辑代码
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
//创建集合
ArrayList<Integer> list = new ArrayList<>();
list.add(R.drawable.p2);
list.add(R.drawable.p3);
list.add(R.drawable.p4);
//创建适配器
MyPagerAdapter adapter=new MyPagerAdapter(list, getActivity());
view_pagera.setAdapter(adapter);
view_pagera.setCurrentItem(list.size()*1000);
handler.sendEmptyMessageDelayed(0,0);
//解析
gettoJsonData();
}
public void gettoJsonData() {
new Thread(){
@Override
public void run() {
super.run();
String path="http://www.yulin520.com/a2a/forum/allTypeList?sign=376C5BFC22179A1B8FF3A86D4588B29F&pageSize=10&ts=1877785007&forumType=0&page=1";
try {
URL url=new URL(path);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setConnectTimeout(5000);
connection.setReadTimeout(5000);
connection.setRequestMethod("GET");
if (connection.getResponseCode()==200){
InputStream inputStream = connection.getInputStream();
ByteArrayOutputStream bos=new ByteArrayOutputStream();
byte[] buffer=new byte[1024];
int len=0;
while ((len=inputStream.read(buffer))!=-1){
bos.write(buffer,0,len);
}
inputStream.close();
bos.close();
String json = bos.toString();
Message message = Message.obtain();
message.what=1;
message.obj=json;
handler.sendMessage(message);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}.start();
}
private void createDialog(int position) {
}
}
package com.zhoukao1.adapter;
import android.content.Context;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
import android.support.v4.view.PagerAdapter;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import java.util.List;
/**
* Created by 我 on 2018/7/7.
*/
public class MyPagerAdapter extends PagerAdapter{
private List<Integer> list;
private Context context;
public MyPagerAdapter(List<Integer> list, FragmentActivity context) {
this.list = list;
this.context = context;
}
@Override
public int getCount() {
return Integer.MAX_VALUE;
}
@Override
public boolean isViewFromObject(View view, Object object) {
return view==object;
}
@Override
public Object instantiateItem(ViewGroup container, int position) {
ImageView imageView = new ImageView(context);
imageView.setImageResource(list.get(position%list.size()));
imageView.setScaleType(ImageView.ScaleType.FIT_XY);
container.addView(imageView);
return imageView;
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
container.removeView((View)object);
}
}
Fragment 实现 轮播实现
猜你喜欢
转载自blog.csdn.net/nideyida1/article/details/81057169
今日推荐
周排行