2014-04-19 2 views
0

프로그래밍 방식으로 생성 된 레이아웃을 덤프 할 수있는 방법이 있습니까? 예를 들어XML로 프로그래밍 방식으로 생성 된대로 덤프하는 방법 레이아웃

내가 지금

LinearLayout mainLayout = new LinearLayout(this.mContext); 

//...some code here 

mainLayout.addView(picker); 
mainLayout.addView(mOldColor); 
mainLayout.addView(separator); 
mainLayout.addView(mNewColor); 

방법, 예를 들어 Lod.d 및 특성과 레이아웃의 XML 표현을 얻기 위해 덤프 레이아웃 생성?

답변

0

두려워하지 않습니다. 뷰 자체는 그들이 가져온 XML에 대해 아무것도 모르기 때문에 xml로 직렬화하도록 강제 할 수있는 방법이 없습니다.

이제 직접 수행하려는 경우보기 계층 구조를 상당히 쉽게 걸을 수 있습니다. 그러나 뷰가 xml로 변환되지 않으므로 각 속성을 개별적으로 쿼리하고 xml을 직접 작성해야합니다. 그리고 커스텀 속성을 가질 수있는 커스텀 뷰에서는 전혀 동작하지 않습니다. 그리고 리플렉션을 사용하여 xml에서 뷰 유형의 클래스 이름을 가져와야합니다. 기본적으로 꽤 무언가를 위해 많은 일을합니다.

관련 문제