我有一個佈局,我想模仿一個列表視圖通過編程添加項目一個在另一個之下。所以,我創建了這些項目是像這樣的佈局的.xml:膨脹佈局和使用其子項
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/ll_lista"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="1dp"
android:layout_marginTop="5dp"
android:layout_toLeftOf="@+id/rellay_btn"
android:orientation="vertical" >
<TextView
android:id="@+id/tv_username"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="1dp"
android:text="Some name"
android:textColor="#3F3F3F"
android:textSize="17sp"
android:textStyle="bold" />
<TextView
android:id="@+id/tv_tip"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/iv_follow"
android:text="Some text"
android:textColor="#3F3F3F"
android:textSize="13sp" />
</LinearLayout>
在活動中,我想生成此佈局的N,填充文字textviews,也是我想設置一個onClickListener對他們。 n是數組的大小。請幫助
注意:一旦活動加載,佈局的數量將不會改變,也無法移除佈局。
這是我現在有,但佈局顯示在活動的頂部,而不是下面一個TextView:
LayoutInflater inflater = LayoutInflater.from(BucketProfileActivity.this);
for (int i = 0; i < 3; i++) {
View view = inflater.inflate(R.layout.bucketprofile_tips, null);
view.setId(i);
TextView tv_username = (TextView) view.findViewById(R.id.tv_username);
tv_username.setText(String.valueOf(i));
RelativeLayout.LayoutParams rl = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT,
RelativeLayout.LayoutParams.WRAP_CONTENT);
rl.addRule(RelativeLayout.BELOW, R.id.tv_nemkell);
addContentView(view, rl);
}
只是想知道,但爲什麼會使用ListView不夠? – idunnololz 2014-12-04 22:30:53
因爲這是一個相當複雜的滾動視圖佈局 – erdomester 2014-12-04 22:43:22
你能不能在for循環中使用'LayoutInflater.inflate()'所需的次數。初始化\設置每個佈局並將其添加到所需的視圖? – idunnololz 2014-12-04 23:30:11