2012-02-19 57 views
1

如何將9修補程序應用於Android TextView代碼中?Android - 在代碼中應用9修補程序

爲什麼,你可能會問?因爲我需要動態設置控件的數量。

我嘗試做類似的東西和它不工作:

(我的9補丁 「notif_bubble_white.9.png」 的代碼是R.drawable.notif_bubble_white)

tv = new TextView(this); 
    tv.setText("Test Message"); 
    tv.setLayoutParams(lpL); 
    tv.setPadding(0, 0, paddingValue, 0); 
    CustomFonts.ApplyFont_Custom1(tv, context); 
    tv.setBackgroundResource(R.drawable.notif_bubble_white); 
    // tv.setTextColor(TxtColFromCl); 
    layout.addView(tv); 

其中LPL被定義爲:

LinearLayout.LayoutParams lpL = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, 
     LinearLayout.LayoutParams.WRAP_CONTENT); 
+1

問題在哪裏? – noob 2012-02-19 19:14:19

+0

「我如何將9補丁應用於Android TextView IN CODE?」有他的問題,大聲笑 – 2012-04-22 02:55:53

回答

0

您可以只創建控件一下子與control.setVisibility(View.GONE)隱藏起來,直到需要,或者,如果控件的數量是未知的,你ç給佈局文件充氣,如this question中所述。

代碼從引用的問題複製(學分塞德里克,或Pentium10,IDK的,並假定控制是一個按鈕):

button.xml:

<Button 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/button01" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" /> 

充氣按鈕:

button = (Button) getLayoutInflater().inflate(R.layout.button, null); 
+0

在XML代碼中,您可以添加9patch背景,並且inflater將始終正確膨脹9patch背景 – 2012-04-22 03:04:31