Androidz中DragGrid的基础使用(结合Tablyout)
来源:互联网 发布:朋友圈图文制作软件 编辑:程序博客网 时间:2024/06/05 05:20
//首先定义布局
<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="35dp" android:layout_height="35dp" />//如何使用DragGrid的呢?
1:导入依赖到自己工程下的gradle
compile 'com.github.andyoom:draggrid:v1.0.1'
2.在项目的build.gradle中添加
allprojects {
maven {url "https://jitpack.io"}
3.权限
<!-- 在SDCard中创建与删除文件权限 -->
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
<!-- 往SDCard写入数据权限 -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<!-- 震动权限 -->
<uses-permission android:name="android.permission.VIBRATE"/>
public class Four extends Fragment implements View.OnClickListener{ private TabLayout mMytab; private ImageButton mImgBtn; private ArrayList<ChannelBean> channelBeens; String jsonStr = ""; private Gson gson; @Nullable @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { View view = inflater.inflate(R.layout.f4, container, false); mMytab = (TabLayout) view.findViewById(R.id.mytab); mImgBtn = (ImageButton)view. findViewById(R.id.imgBtn); mImgBtn.setOnClickListener(this); initData(); return view; } 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("时尚",true)); channelBeens.add(new ChannelBean("育儿",true)); channelBeens.add(new ChannelBean("科技",false)); channelBeens.add(new ChannelBean("趣图",false)); channelBeens.add(new ChannelBean("汽车",false)); channelBeens.add(new ChannelBean("财经",false)); channelBeens.add(new ChannelBean("段子",false)); channelBeens.add(new ChannelBean("健康",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 public void onClick(View v) { switch (v.getId()) { default: break; case R.id.imgBtn: ChannelActivity.startChannelActivity((AppCompatActivity) getActivity(),channelBeens); break; } } @Override public void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if(requestCode == ChannelActivity.REQUEST_CODE && resultCode == ChannelActivity.RESULT_CODE){//为true表示是频道管理回调回来的 jsonStr = data.getStringExtra(ChannelActivity.RESULT_JSON_KEY);//得到栏目管理的结果 mMytab.removeAllTabs();//清空之前的栏目 //把新选择的栏目结果更新到tablayout上 gson = new Gson(); //进行json解析 Type type= new TypeToken<ArrayList<ChannelBean>>(){}.getType(); channelBeens = gson.fromJson(jsonStr,type); //遍历结果,更新tablayout for (int i=0;i<channelBeens.size();i++){ if(channelBeens.get(i).isSelect()){ mMytab.addTab(mMytab.newTab().setText(channelBeens.get(i).getName())); } } } }}
阅读全文
0 0
- Androidz中DragGrid的基础使用(结合Tablyout)
- Androidz中DisplayMetrics类
- draggrid的简单实现
- Android开发中最基础的清单文件中各种不同的标签什么意思有什么作用和androidz中常用的显示单位及单位的换算
- 使用 draggrid 实现 仿今日头条频道管理(详细步骤)
- Androidz中实现透明颜色效果
- service结合MediaPlayer的基础使用
- Lucene基础(四)-- 结合数据库使用
- JavaFX中TableView的使用(结合scene builder)
- struts2中checkbox结合iterator的使用
- MySql中 locate()、substr()的结合使用
- 【Android基础学习】shape和selector的结合使用
- 基础C语言之Typedef和struct的结合使用
- Java基础-结合框架6 使用集合的技巧
- OGNL基础语法和与struts2的结合使用。
- QButtonGroup与QRadioButton的结合使用(Qt4中QButtonGroup类的使用)
- swift中UIScrollView的使用(结合pageControl,timer计时的使用)
- easyui的datagrid中editor和combogrid的结合使用
- 提高SQL查询效率
- 在项目启动时就执行某些操作
- 关于Spring Cloud大型互联网分布式企业微服务云架构
- 安卓中带进度显示的图片上传
- Eclipse报错:java.lang.ClassNotFoundException: ContextLoaderListener 问题
- Androidz中DragGrid的基础使用(结合Tablyout)
- STM32的GPIO的复用功能和重映射功能
- 安卓中如何给按钮添加点击音效
- 数据库SQL性能优化(三)
- Rem值与Px之间的换算
- Visual Studio提示未找到 Git。请安装 Git,或在 "git.path" 设置中配置
- STM32的SPI学习笔记
- Oracle优化 latch free问题Result Cache:RC Latch引起数据库缓慢
- 判断系统是否安装某APP