나는 RelativeLayout을 가지고 있으며 일부 textViews를 삽입하고 싶습니다. 여기 Android : RelativeLayout의 textViews를 프로그래밍 방식으로 추가
코드입니다 :<RelativeLayout
android:id="@+id/JournalSearchListView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:minHeight="30dp"
android:layout_below="@+id/JournalsSearchTextView"
android:orientation="vertical"
android:cacheColorHint="#00000000">
<ProgressBar
android:id="@+id/JournalSearchProgressBar"
style="?android:attr/progressBarStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true" />
</RelativeLayout>
그리고 어떻게 프로그래밍 방식으로이 일을하고있다 :
RelativeLayout journals = (RelativeLayout) findViewById(R.id.JournalSearchListView);
RelativeLayout.LayoutParams params1 = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
for (int i=0;i< authorNames.size();i++) {
TextView tv = new TextView(this);
tv.setId(i);
tv.setText(authorNames.get(i));
tv.setTextColor(Color.BLACK);
Integer a = tv.hashCode();
map.put(a,authorNames.get(i));
params1.addRule(RelativeLayout.BELOW, tv.getId());
journals.addView(tv, params1);
tv.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
System.out.println("Clicked "+ map.get(v.hashCode()));
}
});
}
그러나 문제는 각 텍스트 뷰는 다른 사람과 같은 위치에있는 것입니다.
Andreas에게 감사하지만 문제는 지속되며 아무런 변화가 없습니다 ... –
좋아요, 왜 당신은 왜 relativelayout을 사용하고 싶습니까? 원하는 경우 서로 아래에 항목을 배치하는 것입니다. 선형 레이아웃을 사용하십시오. 그리고 내 이름은 Anders가 아니라 Andreas :-) –
오, 미안 Anders, 내 실수. 선형 레이아웃에서는 가능하지 않은 레이아웃 중간에 배치 된 내 레이아웃에 progressBar가 있기 때문에 상대 레이아웃을 사용하고 싶습니다. –