千家信息网

Android中怎么使用TagFlowLayout制作动态添加删除标签

发表于:2025-02-01 作者:千家信息网编辑
千家信息网最后更新 2025年02月01日,本篇内容介绍了"Android中怎么使用TagFlowLayout制作动态添加删除标签"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!
千家信息网最后更新 2025年02月01日Android中怎么使用TagFlowLayout制作动态添加删除标签

本篇内容介绍了"Android中怎么使用TagFlowLayout制作动态添加删除标签"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

效果图

简单的效果图(使用开源库)[FlowLayout](" https://github.com/hongyangAndroid/FlowLayout ")

步骤

导包

compile 'com.zhy:flowlayout-lib:1.0.3'

初始化数据

private String[] mVals = new String[]    {"Hello", "Android", "Weclome Hi ", "Button", "TextView", "Hello",        "Android", "Weclome", "Button ImageView", "TextView", "Helloworld" }; arrTab = new ArrayList();  //添加一条数据用于添加标签的替换  arrTab.add("tab");

设置TagFlowLayout的adapter

//设置adapter  adapter = new TagAdapter(arrTab){    @Override    public View getView(FlowLayout parent, final int position, String s) {      System.out.println(position + "---" + (arrTab.size() - 1));      if (position == arrTab.size() - 1){        //设置最后一个添加标签的布局        LinearLayout iv = (LinearLayout) LayoutInflater.from(SecondActivity.this).inflate( R.layout.iv,            mFlowLayout,false);        //如果点击就添加元素并刷新adapter        iv.setOnClickListener(new View.OnClickListener() {          @Override          public void onClick(View v) {            int i = arrTab.size() - 1;            //将新加入的数据加到集合的最后一个位置,而原来的添加图标会到 +1 的位置             arrTab.add(i , mVals[position]);            adapter.notifyDataChanged();          }        });        return iv ;      }else{      //正常标签的布局        RelativeLayout tv = (RelativeLayout) LayoutInflater.from(SecondActivity.this).inflate( R.layout.tv,            mFlowLayout,false);        TextView viewById = (TextView) tv.findViewById(R.id.tv_name);        viewById.setText(s);        ImageView imageView = (ImageView) tv.findViewById(R.id.iv_delete);        imageView.setOnClickListener(new View.OnClickListener() {          @Override          public void onClick(View v) {            arrTab.remove(position);            System.out.println("我点击的是" + position);            adapter.notifyDataChanged();          }        });        return tv;      }    }  };  mFlowLayout.setAdapter(adapter);

各种布局文件

iv  tv

"Android中怎么使用TagFlowLayout制作动态添加删除标签"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

0