2011-04-13 7 views
1

내 응용 프로그램은 모두 특정 엔터티의 다양한보기를 조작하고 표시하는 것입니다. 내 응용 프로그램에서 엔티티를 정의하는 Item 클래스가 있습니다. 나는 Item의 특정 버전을 렌더링하는 방법을 알고있는 사용자 정의 레이아웃을 만들었습니다매개 변수화 된 사용자 정의 레이아웃을 작성하는 방법은 무엇입니까?

public class MyItemLayout extends FrameLayout { 
    public MyItemLayout(Context context, AttributeSet attrs) { ... } 
} 
내가 XML이 참조 할 수 있도록하고 싶습니다

:

<MyItemLayout .../> 

하는 것은 이해가 안 무엇 아직 :

  1. 어떻게 이것을 XML로 참조합니까?
  2. 요소에 대해 Item 인스턴스를 어떻게 설정합니까? 나는 XML로 그렇게 할 수 없다 (또는 그렇게 할 수 있을까?), 그래서 나는 그것을 코드로 어떻게 할 것인가?

감사합니다. 사용자 정의 구성 요소 (보기 또는 뷰 그룹)를 참조 할

답변

1

한 가지 방법은 <com.foo.bar.MyItemLayout>

하나의 옵션처럼, 전체 패키지 이름이 생성자의 AttributeSet을 사용하는 XML에 선언에서 데이터를 전달하는 것입니다. XML에 속성을 설정하면이 클래스의 메소드 (예 : getFloatValue())를 사용하여 속성을 가져올 수 있습니다.

그래서 : 1 단계 : <com.foo.bar.MyItemLayout item="xxxx"></com.foo.bar.MyItemLayout> 2 단계 같은 것을 수행 MyItemLayout 생성자 호출 attrs.getFloatValue()에서 (또는 어떤 유형의 당신이 원하는)

그것이 JQCorreia

도움이 희망 데이터를 얻을 수