Tablayou和频道管理

package com.example.lenovo.yuekao3;
布局
<android.support.design.widget.TabLayout
    app:tabTextColor="#000000"
    app:tabMode="scrollable"
    app:tabSelectedTextColor="#ff00"
    android:id="@+id/tab"
    android:layout_weight="1"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    />
import android.content.Intent;import android.content.SharedPreferences;import android.support.design.widget.TabLayout;import android.support.v4.app.Fragment;import android.support.v4.app.FragmentManager;import android.support.v4.app.FragmentPagerAdapter;import android.support.v4.view.ViewPager;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.widget.ImageView;import com.andy.library.ChannelActivity;import com.andy.library.ChannelBean;import org.json.JSONArray;import org.json.JSONException;import org.json.JSONObject;import java.util.ArrayList;import java.util.List;public class MainActivity extends AppCompatActivity { private ImageView iv; private TabLayout tab; private ViewPager vp; private SharedPreferences.Editor edit; private List<Bean> list; private SharedPreferences sp; private String jsonstr; private SharedPreferences bu; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); sp = getSharedPreferences("msg", MODE_PRIVATE); edit = sp.edit(); initView(); initDate(); setOnclick(); } private void initDate() { list = new ArrayList<Bean>(); bu = getSharedPreferences("bu", MODE_PRIVATE); boolean flag = bu.getBoolean("flag", true); if(flag) { list.add(new Bean("头条1",true,new Fragment1())); list.add(new Bean("头条2",true,new Fragment1())); list.add(new Bean("头条3",true,new Fragment1())); list.add(new Bean("头条4",true,new Fragment1())); VpAdadpter adadpter=new VpAdadpter(getSupportFragmentManager()); vp.setAdapter(adadpter); tab.setupWithViewPager(vp); } jsonstr =sp.getString("user_setting",null); if(jsonstr!=null) { list.clear(); try { JSONArray array=new JSONArray(jsonstr); for (int i = 0; i <array.length() ; i++) { JSONObject ob = (JSONObject) array.get(i); String name = ob.getString("name"); boolean isSelect = ob.getBoolean("isSelect"); if(isSelect==true) { if(name.equals("头条1")) { list.add(new Bean("头条1",true,new Fragment1())); } else if(name.equals("头条2")) { list.add(new Bean("头条2",true,new Fragment1())); } else if(name.equals("头条3")) { list.add(new Bean("头条3",true,new Fragment1())); } else if(name.equals("头条4")) { list.add(new Bean("头条4",true,new Fragment1())); } } } } catch (Exception e) { e.printStackTrace(); } } VpAdadpter adadpter=new VpAdadpter(getSupportFragmentManager()); vp.setAdapter(adadpter); tab.setupWithViewPager(vp); } private void setOnclick() { iv.setOnClickListener(new View.OnClickListener() { private List<ChannelBean> cblist; @Override public void onClick(View view) { cblist = new ArrayList<ChannelBean>(); jsonstr=sp.getString("user_setting",null); if(jsonstr==null) { cblist.add(new ChannelBean("头条1",true)); cblist.add(new ChannelBean("头条2",true)); cblist.add(new ChannelBean("头条3",true)); cblist.add(new ChannelBean("头条4",true)); ChannelActivity.startChannelActivity(MainActivity.this, cblist); } else { ChannelActivity.startChannelActivity(MainActivity.this,jsonstr); } bu.edit().putBoolean("flag",false).commit(); } }); } private void initView() { iv = (ImageView) findViewById(R.id.iv); tab = (TabLayout) findViewById(R.id.tab); vp = (ViewPager) findViewById(R.id.vp); } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if(resultCode==101) { jsonstr = data.getStringExtra(ChannelActivity.RESULT_JSON_KEY); edit.putString("user_setting",jsonstr).commit(); recreate(); } } class VpAdadpter extends FragmentPagerAdapter { public VpAdadpter(FragmentManager fm) { super(fm); } @Override public Fragment getItem(int position) { return list.get(position).getFragment(); } @Override public int getCount() { return list.size(); } @Override public CharSequence getPageTitle(int position) { return list.get(position).getName(); } }}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值