天天看點

java動态添加方法_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

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的資料了。