Tablayout与视频拖拽相对应

来源:互联网 发布:js 删除div标签 编辑:程序博客网 时间:2024/06/14 22:32
主界面public class MainActivity extends AppCompatActivity {    private TabLayout tablayout;    private ViewPager viewpager;    private List<ChannelBean> all;    private List<ChannelBean> yuanshi;    private Dao dao;    private Myadapter myadapter;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        tablayout = (TabLayout) findViewById(R.id.tab);        viewpager = (ViewPager) findViewById(R.id.viewpager);        tablayout.setupWithViewPager(viewpager);        viewpager.setOffscreenPageLimit(9);        indate();    }    public void button(View view){        ChannelActivity.startChannelActivity(this, all);    }    //"推荐","北京","视频","社会","微博","生活","军事","教育","应用"    public void indate(){        all = new ArrayList<>();        yuanshi = new ArrayList<>();        dao = new Dao(this);        List<ChannelBean> select = dao.select();        if (select==null||select.size()<1){            ChannelBean channelBean1=new ChannelBean("推荐",true);            ChannelBean channelBean2=new ChannelBean("北京",true);            ChannelBean channelBean3=new ChannelBean("视频",true);            ChannelBean channelBean4=new ChannelBean("社会",true);            ChannelBean channelBean5=new ChannelBean("微博",true);            ChannelBean channelBean6=new ChannelBean("生活",true);            ChannelBean channelBean7=new ChannelBean("军事",true);            ChannelBean channelBean8=new ChannelBean("教育",false);            ChannelBean channelBean9=new ChannelBean("应用",false);            yuanshi.add(channelBean1);            yuanshi.add(channelBean2);            yuanshi.add(channelBean3);            yuanshi.add(channelBean4);            yuanshi.add(channelBean5);            yuanshi.add(channelBean6);            yuanshi.add(channelBean7);            all.add(channelBean1);            all.add(channelBean2);            all.add(channelBean3);            all.add(channelBean4);            all.add(channelBean5);            all.add(channelBean6);            all.add(channelBean7);            all.add(channelBean8);            all.add(channelBean9);            dao.add(all);        }else {            all.addAll(select);            List<ChannelBean> tiaojianselect = dao.tiaojianselect();            yuanshi.addAll(tiaojianselect);        }        myadapter = new Myadapter(getSupportFragmentManager(), yuanshi);        viewpager.setAdapter(myadapter);    }    @Override    protected void onActivityResult(int requestCode, int resultCode, Intent data) {        super.onActivityResult(requestCode, resultCode, data);        //频道方法        if (requestCode == ChannelActivity.REQUEST_CODE && resultCode == ChannelActivity.RESULT_CODE) {            String stringExtra = data.getStringExtra(ChannelActivity.RESULT_JSON_KEY);            if (TextUtils.isEmpty(stringExtra)) {                return;            }            List<ChannelBean> list = new Gson().fromJson(stringExtra, new TypeToken<List<ChannelBean>>() {            }.getType());            if (list == null || list.size() < 1) {                return;            }            all.clear();            yuanshi.clear();            //将返回的数据,添加到我们的集合中            all.addAll(list);            for (ChannelBean channelBean : list) {                boolean select = channelBean.isSelect();                if (select) {                    yuanshi.add(channelBean);                }            }            myadapter.notifyDataSetChanged();            //保存数据库            dao.delete();            dao.add(all);            FragmentManager supportFragmentManager = getSupportFragmentManager();            List<Fragment> fragments = supportFragmentManager.getFragments();            FragmentTransaction transaction = supportFragmentManager.beginTransaction();            for (Fragment f : fragments                    ) {                transaction.remove(f);            }            transaction.commitAllowingStateLoss();            recreate();        }    }}适配器
public class Myadapter extends FragmentPagerAdapter {    //private String[] title={"推荐","北京","视频","社会","微博","生活","军事","教育","应用"};    private FragmentManager mFragmentManager;    List<ChannelBean> mChannelBeanList;    public Myadapter(FragmentManager fm, List<ChannelBean> mChannelBeanList) {        super(fm);        this.mFragmentManager = mFragmentManager;        this.mChannelBeanList = mChannelBeanList;    }    @Override    public Fragment getItem(int position) {        MyFragment myFragment=new MyFragment();//        Bundle bundle=new Bundle();//        bundle.putString("text",mChannelBeanList.get(position).getName());//        myFragment.setArguments(bundle);        return myFragment;    }    @Override    public int getCount() {        return mChannelBeanList!=null?mChannelBeanList.size():0;    }    @Override    public CharSequence getPageTitle(int position) {        return mChannelBeanList.get(position).getName();    }}创建数据库
public class Sqlite extends SQLiteOpenHelper {    public Sqlite(Context context) {        super(context, "zhoukao3.db", null, 1);    }    @Override    public void onCreate(SQLiteDatabase db) {        db.execSQL("create table zhoukao3(name varchar(20),selected Integer)");    }    @Override    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {    }}添加查询删除类
public class Dao {    private final SQLiteDatabase dao;    public Dao(Context context){        Sqlite sqlite=new Sqlite(context);        dao = sqlite.getWritableDatabase();    }    public void add(List<ChannelBean> channelBeenlist){        if (channelBeenlist==null||channelBeenlist.size()<0){            return;        }        for (ChannelBean channelbean:channelBeenlist             ) {            ContentValues values=new ContentValues();            values.put("name",channelbean.getName());            values.put("selected",channelbean.isSelect());            dao.insert("zhoukao3",null,values);        }    }    public List<ChannelBean> select(){        Cursor cursor = dao.query("zhoukao3", null, null, null, null, null,null);        List<ChannelBean> list=new ArrayList<>();        while (cursor.moveToNext()){            String name = cursor.getString(cursor.getColumnIndex("name"));            int selected = cursor.getInt(cursor.getColumnIndex("selected"));            list.add(new ChannelBean(name,selected==0?false:true));        }        cursor.close();        return list;    }    public List<ChannelBean> tiaojianselect(){        Cursor cursor = dao.query("zhoukao3", null, "selected=?", new String[]{"1"}, null, null, null);        List<ChannelBean> list=new ArrayList<>();        while (cursor.moveToNext()){            String name = cursor.getString(cursor.getColumnIndex("name"));            int selected = cursor.getInt(cursor.getColumnIndex("selected"));            list.add(new ChannelBean(name,selected==0?false:true));        }        cursor.close();        return list;    }    public void delete(){        dao.delete("zhoukao3",null,null);    }}
原创粉丝点击