Java 动态添加 view 的方法
这里有新鲜出炉的 Java 设计模式, 程序狗速度看过来!
Java 程序设计语言
java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言, 是由 Sun Microsystems 公司于 1995 年 5 月推出的 Java 程序设计语言和 Java 平台 (即 JavaEE(j2ee), JavaME(j2me), JavaSE(j2se)) 的总称
这篇文章主要介绍了 Java 动态添加 view 的方法, 非常不错, 具有参考借鉴价值, 需要的朋友可以参考下
一般情况下, 我们大部分人都是在 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 的数据了
来源: http://www.phperz.com/article/18/0213/358700.html