按照国际惯例,先上图:

Android 动态添加view或item并获取数据_第1张图片

核心代码在于以下两点:

 /**     * 添加item     */    private void addViewItem(){        View viewItem = LayoutInflater.from(this).inflate(R.layout.item_add_vip_num, llVipNumContainer,false);        llVipNumContainer.addView(viewItem);        sortViewItem();        //添加并且排序之后将布局滚动到底部,方便用户继续添加        scrollView.post(new Runnable() {            @Override            public void run() {                scrollView.fullScroll(ScrollView.FOCUS_DOWN);            }        });    }    /**     * 该方法主要用于排序(每个item中的序号),主要针对从中间删除item的情况     */    private void sortViewItem(){        for(int i = 0; i < llVipNumContainer.getChildCount(); i++){            final View viewItem = llVipNumContainer.getChildAt(i);            TextView tvIndex = (TextView)viewItem.findViewById(R.id.tv_index);            tvIndex.setText((i+1) + "");            LinearLayout llDelete = (LinearLayout) viewItem.findViewById(R.id.ll_delete);            llDelete.setOnClickListener(new View.OnClickListener() {                @Override                public void onClick(View v) {                    llVipNumContainer.removeView(viewItem);                    sortViewItem();                }            });        }    }

注意两点:

1、每次添加/删除完成之后要进行重新排序,主要是针对从中间删除item时序号间断问题;

2、每次添加完成之后将ScrollView滚动到底部,方便用户继续进行添加操作。

 

源码传送门:https://github.com/tianyalu/DynamicallyAddItemDemo

如觉得对您有帮助,欢迎给个star。

更多相关文章

  1. Android中的用户词库——UserDictionry
  2. 关于android录音权限被用户禁用的问题解决方案
  3. Android自动登录 记住用户名密码实现 SharedPreferences
  4. Android多用户原理
  5. Android非主用户无线相关设置的显示
  6. Android开发——本地存储、用户权限获取
  7. 创建灵活的用户界面-Android Fragment

随机推荐

  1. Android(安卓)和 PHP 之间进行数据加密传
  2. 最新eclipse中android插件安装下载地址
  3. Android4.0 设置系统默认输入法
  4. android 透明对话框
  5. Android的第一个程序运行
  6. linux下android开发环境的配置
  7. android camera 布局分析
  8. Lottie-移动动画效果框架
  9. Android(安卓)源码编译make的错误处理
  10. android中webview开启了硬件加速后会出现