2011-05-08 5 views
0

우선, 제 질문이 매우 기본적인 경우 사과드립니다. 답변을 찾는 데 유용한 키워드를 모르겠습니다.XML 파일의보기 구성 요소 사용하기 (안드로이드)

.xml 파일 (예 : 섭씨에서 화씨까지의 변환기, 일부 옵션 메뉴 등)에서 실행되는 두 가지 "유형"의 응용 프로그램을 프로그래밍하는 방법을 알고 있습니다. 뷰를 확장하는 클래스 (그래픽 구성 요소가있는 응용 프로그램의 경우) 내 질문은, 어떻게 그들을 결합하는 것입니다? 보다 정확하게, View 구성 요소를 XML 파일에 추가하는 방법은 무엇입니까? 실용적인 예 : 터치 한 번 움직이는 옵션 메뉴에서 원 그리기.

미리 감사드립니다.

답변

1

옵션 메뉴에서 원을 그리는 방법에 대해서는 알지 못하지만, 일반적으로 이와 같은 레이아웃 xml에서는 사용자 정의보기 클래스를 사용할 수 있습니다.

<com.testing.MyCustomView 
    id="@+id/my_view" 
    ... /> 

TextViews를 사용하여 매우 비슷하게 비교를 만드는 등 ImageViews는 XML 사용자 정의보기를 사용하려면

+0

대단히 감사합니다.이 접근 방식을 시도 할 것입니다. – ronash

+0

어떻게 진행되었는지 알려주십시오. – harism

+0

글쎄, 내가보기의 간단한 확장에 그것을 시도하고 완벽하게 잘 작동합니다. 내일 (너무 지쳤습니다 ...) 저는 센서로부터 몇 가지 정보를 소개하려고합니다. 그러나 센서가 주요 Activity 클래스에서 다루어지기 때문에 문제가 발생할 것이라고는 생각하지 않습니다. 방법에 관심이있을 수 있습니다. 다시 한 번 감사 드리며 즐거운 한 주를 보내십시오! – ronash

1

당신은 그 같은 방식으로

  • 코드보기에 필요합니다 AttributeSet를 받아들입니다. 예 :

    공공 ActivityTitleView (컨텍스트 컨텍스트의 AttributeSet attrs에)

  • 이 styleable 속성을 정의합니다. 그들은
    • <resources> 
          <declare-styleable name="ActivityTitleView"> 
           <attr name="text" format="string"/> 
           <attr name="helpContext" format="string"/> 
          </declare-styleable> 
      </resources 
      

    자신의 네임 스페이스와 XML에서보기를 포함 고해상도/값/attr.xml로 이동합니다.

<있는 LinearLayout 의 xmlns : 당신이 당신의 속성을 원하는 경우 자신의 네임 스페이스는 중요하다 안드로이드 = "http://schemas.android.com/apk/res/android" 의 xmlns : yournamespace = "HTTP : //schemas.android.com/apk/res/com.yourpackage " >

<com.yourpackage.ActivityTitleView yournamespace:text="Bla Bla" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content"/> 
  • 추출 코드의 속성

죄송합니다. StackOverflow가 내 발췌 문장의 형식을 제대로 지정하지 않은 것 같습니다. 자유롭게 서식을 편집 할 수 있습니다.

+0

답변 해 주셔서 대단히 감사합니다.불행히도 나는 당신이 말한 모든 것을 이해하기 위해 안드로이드 프로그래밍에 대해 충분히 알지 못한다고 생각합니다. 그래서 지금은 다른 제안 된 접근법을 취할 것입니다. 그러나 시간과 노력이있을 때 저는 확실히 살펴볼 것입니다. 감사! – ronash

+0

사실 그것은 같은 접근법입니다. 나는 그것이 어수선하게 될 수있는 방법을 볼 수 있습니다 - 나는 몇 주 전에 당신의 신발에있었습니다. 보기를 맞춤 설정 (예 : xml의 원 반경 지정)하고 싶다면 다시 돌아와 다시 읽으려고 할 수 있습니다. 문안 인사. –

관련 문제