一般情況下,我們大部分人都是在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的資料了。