내 응용 프로그램의 경우 확인란과 textviews를 사용하여 여러 개의 선형 선형 레이아웃을 동적으로 만들어야합니다. 현재 나는 for 루프 내에서 이들을 동적으로 생성한다. 성능 및 편의성을 위해 layoutinflater를 사용하는 것이 더 좋은 방법 일 것이라고 생각하여 정확한 서식을 가진 하나의 수평 선형 레이아웃을 정의한 다음 일종의 루프 내에서이를 추가합니다. 그러나이 문제가 발생합니다. 나는 난 후 무엇을 구현하는 더 나은 방법이있는 경우에도 열려있어 (또는 내 현재의 방법은 성능 등에 실제로 더 나은 경우)여러 개의 뷰를 추가하는 LayoutInflater
//my main layout
LinearLayout main = (LinearLayout) findViewById(R.id.main);
LayoutInflater inflate = getLayoutInflater();
//inflating the layout containing the horizontal
LinearLayout l = (LinearLayout) inflate.inflate(R.layout.inflater, main, false);
//adding the view
main.addView(l);
문제는 내가에 대한이를 넣을 수 없다 어떤 종류의 루프. 다음은 addView 명령을 반복하기위한 오류 로그입니다.
12-24 19:37:18.668: E/AndroidRuntime(8780): java.lang.RuntimeException: Unable
to start activity ComponentInfo{com.example.test1/com.example.test1.MainActivity}:
java.lang.IllegalStateException: The specified child already has a
parent. You must call removeView() on the child's parent first.
또한 레이아웃을 주 선형 레이아웃에 추가 한 다음 가져 와서 복사 한 다음 추가하는 방법도 고려했습니다. 너희들이이 일을하는 법을 배울 수있게 도와 줄 수 있니?
대단히 감사합니다!
왜 모든 종류의 루프에 넣을 수 없습니까? –
죄송합니다, 내 logcat을 포함 시켰습니다. – AndroidPenguin
루프에서 선형 레이아웃의 ID를 설정하면 어떻게됩니까? 예 : l.setId (i) – jnthnjns