Java动态添加view的方法

发布时间 - 2026-01-10 22:44:43    点击率:

 一般情况下,我们大部分人都是在XML文件直接写布局,可是有些时候需要用代码动态添加布局,比如我昨天做一个viewpager的页数的显示,当没有内容是把textView给clear掉,有内容是用Java代码动态添加。

1.编写代码,生成view,添加到linearLayout内。

mTextView=new TextView(mActivity);
LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(60, 30);
mTextView.setLayoutParams(layoutParams);
mTextView.setTextColor(Color.parseColor("#03A9F4"));
mTextView.setVisibility(View.GONE);
dotsLinearLayout.addView(mTextView);

2.根据viewpager的页数变化显示textView

public void setCurrentNumber(int number){
  boolean isContain=false;
  for(int i=0;i<dotsLinearLayout.getChildCount();i++){
   View v=dotsLinearLayout.getChildAt(i);
   if (v instanceof TextView){
     isContain=true;
   }
  }
  if (isContain == false){
   setMTextView();
  }
  if (myViewPagerAdapter!=null){
   int current=number+myViewPager.getCurrentItem()*4;
   mTextView.setText(current+"/"+myViewPagerAdapter.getCount()*4);
   mTextView.setVisibility(View.VISIBLE);
   for (int i = 0; i < dotViews.size(); i++) {
      dotViews.get(i).setVisibility(View.GONE);
   }
  }
}

其中for循环是判断linearlayout内是否存在textView,不存在则创建textView,然后就可以动态改变textView的数据了。


# java  # 动态添加  # view  # 动态添加view  # Android中用RxJava和ViewPager实现轮播图  # Java Annotation Overview详解  # JavaFX之TableView的使用详解  # 通过Java代码来创建view的方法  # 是在  # 不存在  # 做一个  # 需要用  # 是否存在  # 就可以  # 昨天  # LinearLayout  # LayoutParams 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: javascript中闭包概念与用法深入理解  如何快速登录WAP自助建站平台?  如何快速打造个性化非模板自助建站?  google浏览器怎么清理缓存_谷歌浏览器清除缓存加速详细步骤  高端建站如何打造兼具美学与转化的品牌官网?  Windows11怎样设置电源计划_Windows11电源计划调整攻略【指南】  如何在 React 中条件性地遍历数组并渲染元素  黑客入侵网站服务器的常见手法有哪些?  如何快速搭建虚拟主机网站?新手必看指南  Laravel如何实现事件和监听器?(Event & Listener实战)  高防服务器租用指南:配置选择与快速部署攻略  Laravel怎么清理缓存_Laravel optimize clear命令详解  如何在云指建站中生成FTP站点?  Firefox Developer Edition开发者版本入口  详解CentOS6.5 安装 MySQL5.1.71的方法  韩国网站服务器搭建指南:VPS选购、域名解析与DNS配置推荐  在线制作视频的网站有哪些,电脑如何制作视频短片?  如何确认建站备案号应放置的具体位置?  企业在线网站设计制作流程,想建设一个属于自己的企业网站,该如何去做?  大连 网站制作,大连天途有线官网?  米侠浏览器网页图片不显示怎么办 米侠图片加载修复  Win11怎么更改系统语言为中文_Windows11安装语言包并设为显示语言  什么是javascript作用域_全局和局部作用域有什么区别?  智能起名网站制作软件有哪些,制作logo的软件?  如何快速搭建高效服务器建站系统?  Laravel怎么连接多个数据库_Laravel多数据库连接配置  如何快速搭建高效香港服务器网站?  UC浏览器如何切换小说阅读源_UC浏览器阅读源切换【方法】  再谈Python中的字符串与字符编码(推荐)  Laravel如何实现模型的全局作用域?(Global Scope示例)  Laravel怎么导出Excel文件_Laravel Excel插件使用教程  如何在阿里云虚拟机上搭建网站?步骤解析与避坑指南  Laravel API路由如何设计_Laravel构建RESTful API的路由最佳实践  Bootstrap整体框架之JavaScript插件架构  Laravel怎么实现前端Toast弹窗提示_Laravel Session闪存数据Flash传递给前端【方法】  Angular 表单中正确绑定输入值以确保提交与验证正常工作  rsync同步时出现rsync: failed to set times on “xxxx”: Operation not permitted  Laravel Octane如何提升性能_使用Laravel Octane加速你的应用  jquery插件bootstrapValidator表单验证详解  Win11应用商店下载慢怎么办 Win11更改DNS提速下载【修复】  Laravel中的withCount方法怎么高效统计关联模型数量  装修招标网站设计制作流程,装修招标流程?  Laravel模型关联查询教程_Laravel Eloquent一对多关联写法  深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?  简单实现Android验证码  HTML5空格在Angular项目里怎么处理_Angular中空格的渲染问题【详解】  成都品牌网站制作公司,成都营业执照年报网上怎么办理?  javascript读取文本节点方法小结  如何在阿里云通过域名搭建网站?  网站页面设计需要考虑到这些问题