嗨我想繪製一個複雜的視圖,由xml佈局定義到一個位圖(後來繪製到畫布)。然後,當數據模型發生變化時,該視圖會定期更新。 更改靜態定義的TextView工作完美,但添加新的視圖到linearLayout是某種方式不起作用。我的錯誤在哪裏?動態視圖創建時,將其呈現爲一個畫布失敗
這是怎麼了增加新的瀏覽次數:
linearLayoutContainer.removeAllViewsInLayout();
for (int i = 0 ; i < 5; i ++) {
TextView child = new TextView(getContext());
child.setText("example" + i);
child.setVisibility(View.VISIBLE);
linearLayoutContainer.addView(child, i , new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.FILL_PARENT));
i++;
}
這是怎麼了裝箱位圖:
sideBarView.refresh();
sideBarView.invalidate();
sideBarBitmap = sideBarView.getDrawingCache();
這完全適用於已更新的XML定義TextViews,但新添加的視圖不可見。
我的XML佈局看起來像這樣:
<?xml version="1.0" encoding="utf-8"?>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="some"
android:textSize="20dp" />
<LinearLayout
android:id="@+id/linearLayoutContainer"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="0.33"
android:gravity="center_horizontal" >
<!-- THE CONTAINER -->
</LinearLayout>
<LinearLayout
android:id="@+id/linearLayout1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="center"
android:layout_weight="0.66"
android:gravity="center"
android:orientation="horizontal" >
<TextView
android:id="@+id/TextView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="2dp"
android:text="20%"
android:textSize="30dp" />
<TextView
android:id="@+id/TextView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="3dp"
android:text="35%"
android:textSize="30dp" />
</LinearLayout>
沒有不工作,順便說一句getDrawingCache調用buildDrawingCache認爲是無效後.. 。THI這個問題讓我瘋狂 – joecks 2012-02-13 16:20:30