0
我是Android開發新手。充氣GUI只能使用一次,怎麼樣?
我有活動,我希望添加一些GUI元素。
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_dial_details);
if (android.os.Build.VERSION.SDK_INT >= 11)
// Show the Up button in the action bar.
getActionBar().setDisplayHomeAsUpEnabled(true);
inflateNewRow();
inflateNewRow();
}
private void inflateNewRow()
{
LinearLayout thisLayout = (LinearLayout) findViewById(R.id.dial_details_layout);
LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
// Before edit!
//inflater.inflate(R.layout.dialitem_details, thisLayout);
// After edit, which works!
inflater.inflate(R.layout.dialitem_details, null);
thisLayout.addView(ll);
}
第一次調用inflateNewRow添加行,罰款。第二個電話,似乎什麼都不做!沒有例外,沒有行被添加。
我添加了setVisibility調用,只是爲了確保。沒什麼區別。
將inflateNewRow調用兩次可能看起來很奇怪,但實際上只是爲了這個例子。它將在onCreate中被調用一次,然後從菜單單擊事件中被調用。這個簡單的例子雖然重現了這個問題。
這是要添加這就是小圖:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal" >
<EditText
android:id="@+id/editText1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="2"
android:ems="10"
android:inputType="number" >
<requestFocus />
</EditText>
<CheckBox
android:id="@+id/checkBox1"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
到這一點:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/dial_details_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".DialDetailsActivity" >
<CheckBox
android:id="@+id/checkBox1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="CheckBox" />
<EditText
android:id="@+id/editText1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="number" >
<requestFocus />
</EditText>
</LinearLayout>
爲什麼只有第一行出現任何想法添加/?
感謝您的回答。我嘗試了你的建議。不幸的是它沒有任何區別。我已經將問題中的代碼更新爲您的建議。 – kaze 2013-02-10 17:32:23
@kaze讓我檢查一次代碼 – 2013-02-10 17:33:58
@kaze我誤解了你的需求alonf wd你還需要添加孩子到你的視圖組中的變化這裏是一個示例http://stackoverflow.com/questions/6661745/dynamically-adding-一個孩子到linearlayout與越來越每個孩子的位置 – 2013-02-10 17:41:51