频道管理
来源:互联网 发布:豆豆营销软件官方 编辑:程序博客网 时间:2024/05/16 05:39
布局
<?xml version="1.0" encoding="utf-8"?><RelativeLayout 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" tools:context="bwei.com.myapplication.MainActivity"> <android.support.design.widget.TabLayout android:id="@+id/mytab" app:tabMode="scrollable" android:layout_width="match_parent" android:layout_height="wrap_content" /> <ImageButton android:id="@+id/imgBtn" android:src="@mipmap/add_recipients_normal" android:layout_alignParentRight="true" android:layout_alignParentTop="true" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <android.support.v4.view.ViewPager android:id="@+id/vp" android:layout_below="@+id/mytab" android:layout_width="match_parent" android:layout_height="match_parent"/></RelativeLayout>
////主页面逻辑
package bwei.com.myapplication;import android.content.Intent;import android.os.Bundle;import android.support.constraint.solver.SolverVariable;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.util.Log;import android.view.View;import android.widget.ImageButton;import android.widget.Toast;import com.andy.library.ChannelActivity;import com.andy.library.ChannelBean;import com.google.gson.Gson;import com.google.gson.reflect.TypeToken;import java.lang.reflect.Type;import java.util.ArrayList;import bwei.com.myapplication.Fragment.One;public class MainActivity extends AppCompatActivity { private ArrayList<Fragment> fragments; private FragmentManager fm; private ArrayList<ChannelBean> channelBeens; String jsonStr = ""; private TabLayout mMytab; private ImageButton mImgBtn; private ViewPager mVp; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initData(); initView(); mImgBtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { ChannelActivity.startChannelActivity(MainActivity.this,channelBeens); } }); } private void initView() { fm = getSupportFragmentManager(); mMytab = (TabLayout) findViewById(R.id.mytab); mImgBtn = (ImageButton) findViewById(R.id.imgBtn); mVp = (ViewPager) findViewById(R.id.vp); mMytab.setupWithViewPager(mVp); for (int i = 0; i < channelBeens.size(); i++) { mMytab.addTab(mMytab.newTab().setText(channelBeens.get(i).getName()).setIcon(R.mipmap.ic_launcher));// } //给VIewPager配置pager页 fragments = new ArrayList<Fragment>(); for(int i=0;i<channelBeens.size();i++){ One one=new One(); //向Fragment传值 Bundle b = new Bundle(); b.putString("title",channelBeens.get(i).getName()); one.setArguments(b); fragments.add(one);//保存fragment,作为vp的pager页 } //通过适配器配置给vp mVp.setAdapter(new FragmentPagerAdapter(fm) { @Override public Fragment getItem(int position) { return fragments.get(position); } @Override public int getCount() { return fragments.size(); } @Override public CharSequence getPageTitle(int position) { return channelBeens.get(position).getName(); } }); } private void initData(){ //准备栏目数据 channelBeens = new ArrayList<ChannelBean>(); channelBeens.add(new ChannelBean("热点",true)); channelBeens.add(new ChannelBean("军事",true)); channelBeens.add(new ChannelBean("八卦",true)); channelBeens.add(new ChannelBean("游戏",true)); channelBeens.add(new ChannelBean("宠物",true)); channelBeens.add(new ChannelBean("汽车",true)); channelBeens.add(new ChannelBean("热卖",true)); channelBeens.add(new ChannelBean("外卖",true)); channelBeens.add(new ChannelBean("条目1",true)); channelBeens.add(new ChannelBean("条目2",true)); channelBeens.add(new ChannelBean("条目3",false)); channelBeens.add(new ChannelBean("条目4",false)); channelBeens.add(new ChannelBean("条目5",false)); channelBeens.add(new ChannelBean("条目6",false)); channelBeens.add(new ChannelBean("条目7",false)); channelBeens.add(new ChannelBean("条目8",false)); //把选择的栏目(true)数据配置给tablayout// for (int i=0;i<channelBeens.size();i++){// if(channelBeens.get(i).isSelect()){// mMytab.addTab(mMytab.newTab().setText(channelBeens.get(i).getName()));// }// } } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); jsonStr = data.getStringExtra(ChannelActivity.RESULT_JSON_KEY);//得到栏目管理的结果 Log.i("main",jsonStr); mMytab.removeAllTabs();//清空之前的栏目 //把新选择的栏目结果更新到tablayout上 Gson gson = new Gson(); gson = new Gson(); //进行json解析 Type type= new TypeToken<ArrayList<ChannelBean>>(){}.getType(); channelBeens = gson.fromJson(jsonStr,type); for (int i=0;i<channelBeens.size();i++){ if(channelBeens.get(i).isSelect()){ mMytab.addTab(mMytab.newTab().setText(channelBeens.get(i).getName())); } } }}
阅读全文
0 0
- 频道管理
- 频道管理
- 频道管理
- 频道管理
- 频道管理
- 频道管理
- 频道管理
- 频道管理
- 频道管理
- 频道管理
- 频道管理
- 频道管理
- 频道管理
- 频道管理
- 频道管理
- 频道管理
- 频道管理
- 频道管理
- 《文法俱乐部》读书笔记之分词--LG二进制
- UCOS_III学习笔记(一)
- [威佐夫博奕]POJ 1067——取石子游戏
- 子类,父类静态代码块,构造代码块,以及构造函数执行顺序
- Reinforcement Learning: Model-free control
- 频道管理
- 毕业后
- 每一个程序员必须知道的业内英语词汇
- 刷新加Rectorfit2和Rxjava
- LeetCode 13 Roman to Integer (easy)——python
- 购物车之订单列表
- 如何搭建gerrit服务器进行code review
- 160个练手CrackMe-044
- 3.反向代理-负载均衡