여러 개의 하위보기 (TextViews, ImageViews 등)가 포함 된 'myview.xml'이라는 XML 레이아웃 파일에 RelativeLayout이 정의되어 있습니다.xml 레이아웃 파일에서 사용자 정의보기 클래스를 만드는 가장 좋은 방법은 무엇입니까?
이 RelativeLayout을 나타내는 'MyView'라는 View 객체/클래스를 만들고 싶습니다.이 객체는 내가 정의 할 메소드를 사용하여 하위보기의 속성을 변경할 수있게 해주고 인스턴스를 추가 및 검색 할 수있게합니다 MyView를 프로그래밍 방식으로 (다른 뷰로) 가져올 수 있습니다.
가장 좋은 방법은 무엇입니까? 순간 나는이 작동하지만, 내 모든 RelativeLayouts이 포함되어 의미 ... FrameLayout이를 확장하고 나는 다음과 같은 방법을 호출 FrameLayout이의 세 가지 생성자를 오버라이드 (override)에서 'MYVIEW'라는 이름의 클래스 ...
LayoutInflater inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View view = inflater.inflate(R.layout.myview, null);
addView(view);
을 만드는 오전 FrameLayouts 따라서 내 뷰 계층 구조에 여분의 (불필요한) 레이어가 있습니다 ...
감사합니다. Mad Mik. 만약 내가'inflate' 메소드를 올바르게 이해했다면, 뷰 계층 구조에 여분의 레이어가 있음을 의미하지만, 내가 그것을하고있을 때 혼자가 아니라는 것을 알면 기쁘다. 그리고 당신의 방법은 메소드 호출이 하나 적다. 그걸로가! :) –
예. 당신은 여전히 아이들처럼 부 풀린 견해로 끝납니다. – madmik3