当前位置: 首页 > news >正文

重庆做网站的程序员待遇qq空间个人网站

重庆做网站的程序员待遇,qq空间个人网站,关于做数学 平方差公式的网站,商标查询网入口概述 在界面实现一个列表,用户可以随意给列表新增或者删除项目,在开发中比较常用,但是真正做起来又有点花时间,今天花时间做一个,以便在以后的开发中用到。 详细 运行效果: 二、实现思路: 1…

概述

在界面实现一个列表,用户可以随意给列表新增或者删除项目,在开发中比较常用,但是真正做起来又有点花时间,今天花时间做一个,以便在以后的开发中用到。

详细

运行效果:

二、实现思路:

1、实现一个主界面,主界面放一个list用来显示这个动态的列表,还要包含一个按钮用来点击时新增列表的栏目。
2、实现列表的适配器Adapter,这里实现显示栏目布局以及删除当前栏目的接口回调。
3、在主界面列表变更中(新增or删除),能准确获取当前适配器的内容,以便不会误删。

三、实现过程:

1、实现一个主界面,主界面放一个list用来显示这个动态的列表,还要包含一个按钮用来点击时新增列表的栏目。

 

    public class MainActivity extends AppCompatActivity implements ObserveEtListener, View.OnClickListener{private ActivityMainBinding mViews;private DynamicNewAdapter dynamicNewAdapter;private MainViewModel mainViewModel;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);mViews = DataBindingUtil.setContentView(this,R.layout.activity_main);mainViewModel = new ViewModelProvider(this).get(MainViewModel.class);dynamicNewAdapter = new DynamicNewAdapter(this);mViews.recycleView.setAdapter(dynamicNewAdapter);dynamicNewAdapter.syncSetNewData(mainViewModel.drugsBeanList);mViews.setOnClickListener(this);}// 删除栏目@Overridepublic void delateObserve(int pos) {dynamicNewAdapter.syncSetNewData(new ArrayList<>(getAdapterDetails(pos)));}@Overridepublic void onClick(View v) {int vId = v.getId();switch (vId){case R.id.addItem:// 新增栏目addItem();break;}}/*** 新增栏目*/private void addItem(){mainViewModel.drugsBeanList = getAdapterDetails(-1);mainViewModel.drugsBeanList.add(new DrugsBean("", "", "ml/亩"));dynamicNewAdapter.syncSetNewData(mainViewModel.drugsBeanList);}
2、实现列表的适配器Adapter,这里实现显示栏目布局以及删除当前栏目的接口回调。
    public class DynamicNewAdapter extends BaseDataBindingAdapter<DrugsBean, ItemDyncmicAdapterBinding> {private ObserveEtListener listener;private String[] numbers = Utils.getApp().getResources().getStringArray(R.array.usage_array);public DynamicNewAdapter(ObserveEtListener listener) {super(R.layout.item_dyncmic_adapter);this.listener = listener;}@Overrideprotected void convert(@NonNull DataBindViewHolder<ItemDyncmicAdapterBinding> helper, DrugsBean drugsBean) {helper.binding.tvNameValue.setText(drugsBean.drugName);helper.binding.tvUsageValue.setText(drugsBean.weigth);int pos = getData().indexOf(drugsBean);helper.binding.tvUsageUnit.setText(drugsBean.unit);helper.binding.spinnerUnit.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {@Overridepublic void onItemSelected(AdapterView<?> parent, View view, int position, long id) {helper.binding.tvUsageUnit.setText(numbers[position]);}@Overridepublic void onNothingSelected(AdapterView<?> parent) {}});if (drugsBean.unit != null && drugsBean.unit.indexOf("ml") > -1) {helper.binding.spinnerUnit.setSelection(0, true);} else {helper.binding.spinnerUnit.setSelection(1, true);}helper.setTag(R.id.img_del, pos);helper.binding.imgDel.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {if (listener != null) {int pos = (int) v.getTag();notifyItemRemoved(pos);getData().remove(pos);listener.delateObserve(pos);}}});}}
3、在主界面列表变更中(新增or删除),能准确获取当前适配器的内容,以便不会误删。
/*** 获取当前列表数据* @param pos* @return*/private List<DrugsBean> getAdapterDetails(int pos) {List<DrugsBean> details = new ArrayList<>();int length = mViews.recycleView.getChildCount();for (int i = 0; i < length; i++) {if (pos == i)continue;ConstraintLayout ll_item = (ConstraintLayout) mViews.recycleView.getChildAt(i);TextView tv_name_value = ll_item.findViewById(R.id.tv_name_value);TextView tv_usage_value = ll_item.findViewById(R.id.tv_usage_value);TextView tv_usage_unit = ll_item.findViewById(R.id.tv_usage_unit);details.add(new DrugsBean(tv_name_value.getText().toString().trim(),tv_usage_value.getText().toString().trim(), tv_usage_unit.getText().toString().trim()));}return details;}

四、项目文件结构截图

 

http://www.yayakq.cn/news/137061/

相关文章:

  • 做外贸网站注意什么松原市住房和城乡建设厅网站
  • 横山专业做网站建设的公司广州越秀区房价多少钱一平方
  • 展示网站多少钱一个大型集团网站
  • 广东公布最新传染了东营网站建设优化
  • 开个做网站公司wordpress全文检索
  • 网站建设云南苏州有什么好玩的景点
  • 做网站刷流量挣钱吗网站模板建站教程视频教程
  • win10可以自己做网站wordpress微信登录
  • 郑州app开发多少钱公众号排名优化软件
  • 移动wap站点营销网站设计公司排名
  • 六安市裕安区建设局网站wordpress自动分表
  • 免费大型网站网站权限配置
  • 做电影资源缓存网站教程菏泽网站建设哪好
  • 高端网站定制设计公司海珠区手机版网站建设
  • wordperss网站做负载均衡制作高端app开发公司
  • 广元网站建设优化多语言商城网站开发
  • 衡水网站建设制作网站托管要求
  • 中华建设杂志社网站灰色词排名接单
  • 网站建设客户需求表 文库手机网站效果图做多大的
  • 数据来源于网站需如何做脚注做网站基本东西
  • 成都网站关键词商城类网站开发
  • 唐河企业网站制作哪家好wordpress seo主题
  • 西安保洁公司网站建设重庆建工集团股份有限公司官网
  • 南昌net网站开发湖北智能网站建设推荐
  • 手把手教你搭建自己的网站深圳网站设计价格表
  • jeecg 3.7 网站开发苏州集团网站制作设计
  • 网站品牌推广策略网站建设代理
  • 小学网站建设方案书wordpress负载状态100%
  • 青岛哪家网站建设好wordpress内页收录
  • 手机网站的引导页如何丰富网站内容