2014-03-24 4 views
1

ImageView 클래스를 확장하고 사용자 정의 매개 변수를 추가했습니다. Context.getTheme().obtainStyledAttributes() 메서드를 사용하여 코드에서 이러한 사용자 지정 매개 변수를 가져 오는 데 성공합니다.표준 레이아웃 속성 가져 오기

내가 필요한 것은 android:srcandroid:background과 같은 ImageView 객체의 표준 매개 변수에 액세스하는 것입니다. 그 클래스를 사용하기 위해 사용할 수있는 클래스 android.R.styleable. *이 존재하지만 클래스는 더 이상 사용되지 않으며 더 이상 볼 수 없습니다. 이러한 안드로이드 매개 변수에 액세스하려면 어떻게해야합니까? 나는 TypedArray에서 부모의 값을 추출하는 방법을 잘 모르겠어요 동안

답변

-1

, 당신은 적절한 게터로 액세스 할 수있어 예 :

그것은 당신이 찾고있는 아니에요 정확히
public class MyImageView extends ImageView { 

    public MyImageView(Context context, AttributeSet attrs, int defStyle) { 
     super(context, attrs, defStyle); 

     final TypedArray array = getContext().obtainStyledAttributes(attrs, R.styleable.whatever); 
     try { 
      // get custom attributes here 
     } finally { 
      array.recycle(); 
     } 

     // parent attributes 
     final Drawable background = getBackground(); 
     final Drawable src = getDrawable(); 

     // etc. 
    } 

} 

하지만, 도움이 될 수 있습니다.

+0

이 코드는 사용자 지정 특성을 가져 오는 코드입니다. 나는 표준 것들을 검색 할 수 없습니다 ... – Massimo

+0

나는 당신이 _standard_ 것들을 의미하는지 정확히 모르겠습니다. '부모 속성'주석 다음에 나오는 코드는 여러분이 얻으려는 것이 아닙니까? – curtisLoew

+0

android : src, android : background, android : layout_width 등의 android 속성을 얻으려고합니다. – Massimo