compile 'org.greenrobot:eventbus:3.0.0'
compile'org.greenrobot:greendao:3.0.1'
compile'org.greenrobot:greendao-generator:3.0.0'
compile 'com.android.support:recyclerview-v7:26.0.0-alpha1'
compile 'com.squareup.retrofit2:retrofit:2.1.0'
compile 'com.squareup.retrofit2:converter-gson:2.1.0'
compile 'com.facebook.fresco:fresco:0.11.0'
android:name=".utils.MyApplication"
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme"
MyApplication
@Override
public void onCreate() {
super.onCreate();
Fresco.initialize(this);
}
MainActivity
public class MainActivity extends AppCompatActivity implements View.OnClickListener{
List<Fragment> list=new ArrayList<>();
private TextView[] tvb;
private ViewPager vp;
private boolean flag;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
vp= (ViewPager) findViewById(R.id.viewpge);
TextView tv1= (TextView) findViewById(R.id.tex0);
tv1.setOnClickListener(this);
TextView tv2= (TextView) findViewById(R.id.tex1);
tv2.setOnClickListener(this);
TextView tv3= (TextView) findViewById(R.id.tex2);
tv3.setOnClickListener(this);
TextView tv4= (TextView) findViewById(R.id.tex3);
tv4.setOnClickListener(this);
TextView tv5= (TextView) findViewById(R.id.tex4);
tv5.setOnClickListener(this);
tvb=new TextView[]{tv1,tv2,tv3,tv4,tv5};
list.add(new OneFragment());
list.add(new TwoFragment());
list.add(new ThreeFragment());
list.add(new fourFragment());
list.add(new FiveFragment());
if (isOnline()) {
GetData(0);
}else{
showDialog();
}
vp.setAdapter(new FragmentPagerAdapter(getSupportFragmentManager()) {
@Override
public Fragment getItem(int position) {
return list.get(position);
}
@Override
public int getCount() {
return list.size();
}
});
vp.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
GetData(position);
}
@Override
public void onPageSelected(int position) {
}
@Override
public void onPageScrollStateChanged(int state) {
}
});
GetData(0);
}
private void showDialog(){
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setMessage("无网络连接");
builder.setNegativeButton("关闭",null);
builder.setPositiveButton("转到网络设置", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
startActivity(new Intent(Settings.ACTION_WIRELESS_SETTINGS));
}
});
builder.create().show();
}
public boolean isOnline() {
ConnectivityManager connMgr = (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo = connMgr.getActiveNetworkInfo();
return (networkInfo != null && networkInfo.isConnected());
}
public void GetData(int porsion){
for(int i=0;i<tvb.length;i++){
if (porsion==i){
tvb[i].setTextColor(Color.BLUE);
}else{
tvb[i].setTextColor(Color.BLACK);
}
}
}
/**
* Called when a view has been clicked.
*
* @param v The view that was clicked.
*/
@Override
public void onClick(View v) {
switch (v.getId()){
case R.id.tex0:
vp.setCurrentItem(0);
GetData(0);
break;
case R.id.tex1:
vp.setCurrentItem(1);
GetData(1);
break;
case R.id.tex2:
vp.setCurrentItem(2);
GetData(2);
break;
case R.id.tex3:
vp.setCurrentItem(3);
GetData(3);
break;
case R.id.tex4:
vp.setCurrentItem(4);
GetData(04);
break;
}
}
}
UtilsURL
public static final String BASE_HOST_URL="******";
public static final String TAGS="*****";
ServiceAPI
public interface ServiceAPI {
@GET(UtilsURL.TAGS)
Call<Bean> bean();
}
Myadadap
public class Myadadap extends RecyclerView.Adapter<RecyclerView.ViewHolder>{
private List<Bean.ResultsBean> list=new ArrayList<>();
private Context context;
public Myadadap(List<Bean.ResultsBean> list, Context context) {
this.list = list;
this.context = context;
}
@Override
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View inflat= LayoutInflater.from(context).inflate(R.layout.bj_item,parent,false);
return new sViewHodler(inflat);
}
@Override
public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
sViewHodler s= (sViewHodler) holder;
Uri uri=Uri.parse("http://img4q.duitang.com/uploads/item/201411/20/20141120132318_3eAuc.thumb.700_0.jpeg");
s.sim.setImageURI(uri);
s.tv2.setText(list.get(position).getPublishedAt());
s.tv1.setText(list.get(position).getDesc());
}
@Override
public int getItemCount() {
return list.size();
}
private class sViewHodler extends RecyclerView.ViewHolder{
private SimpleDraweeView sim;
private TextView tv1;
private TextView tv2;
public sViewHodler(View itemView) {
super(itemView);
sim=itemView.findViewById(R.id.recee);
tv1=itemView.findViewById(R.id.tv1);
tv2=itemView.findViewById(R.id.tv2);
}
}
}
OneFragment
public class OneFragment extends Fragment{
private View view;
private RecyclerView rec;
private List<Bean.ResultsBean> list=new ArrayList<>();
private UserDao mUserDao;
private User mUser;
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
view=inflater.inflate(R.layout.item2,null);
init();
Getdata();
return view;
}
private void init() {
rec= view.findViewById(R.id.rde);
LinearLayoutManager lin=new LinearLayoutManager(getActivity());
rec.setLayoutManager(lin);
}
private void Getdata() {
Retrofit retrofit=new Retrofit.Builder()
.baseUrl(UtilsURL.BASE_HOST_URL)
.addConverterFactory(GsonConverterFactory.create())
.build();
ServiceAPI serviceAPI = retrofit.create(ServiceAPI.class);
Call<Bean> bean = serviceAPI.bean();
bean.enqueue(new Callback<Bean>() {
@Override
public void onResponse(Call<Bean> call, Response<Bean> response) {
List<Bean.ResultsBean> results = response.body().getResults();
Myadadap myadadap=new Myadadap(results,getActivity());
rec.setAdapter(myadadap);
mUserDao = MyApplication.getInstances().getDaoSession().getUserDao();
for (int i = 0; i < results.size(); i++) {
mUser = new User(null,results.get(i).getDesc());
mUserDao.insert(mUser);
}
}
@Override
public void onFailure(Call<Bean> call, Throwable t) {
}
});
}