2010-08-18 7 views
0

나는 이것이 비교적 쉬운 질문이어야한다고 생각 하겠지만, 나는 안드로이드 개발에 새로운 것이므로 어디에서 돌아야할지 잘 모르겠다.android UI - 새로운 클래스 추가하기

저는 주 활동에 대한 간단한 레이아웃 (현재 상대)이 있습니다. 나는 그 카드 (가치, 소송 등)에 필요한 모든 속성을 가진 객체 (카드 게임을위한 카드)를 만들고 싶습니다. 내 드로어 블 폴더에있는 모든 카드의 이미지가 있습니다.

테스트를 위해 레이아웃 폴더에 card.xml 파일을 만들고 배경에 카드 한 장을 "하드 코드"했습니다.

제 질문은 이제 카드 레이아웃에 대한 XML 파일이 생겼습니다.이 카드에 대한 정보가 들어있는 객체에 어떻게 연결해야합니까? 그러면 그 객체를 기본 장면으로 가져 오는 방법은 무엇입니까? 다른 액티비티로 카드 객체를 만들고 setContentView()를 사용하여 레이아웃 폴더에서 card.xml을 참조해야합니까? 내가 말했듯이, 나는 단지 안드로이드 개발을 시작하고 활동이 어떻게 작동하는지 완전히 모르고있다. 이것이 올바른 방법이라고 가정하면, 어떻게하면이 두 번째 활동을 내 메인 장면으로 가져올 수 있을까요?

TIA

+0

UI 관점에서 본인의 목표가 무엇인지 완전히 명확하지 않습니다. 현재 활동에 카드를 추가 하시겠습니까? 대화 상자와 같은 팝업으로 만드시겠습니까? 또는 새로운 활동에서 전체 화면을 차지하고 싶습니까? –

+0

@ 대니얼 루 : 빠른 답장을 보내 주셔서 감사합니다. 기본적으로 나는 단지 내 주요 활동에 넣을 수있는 카드 객체를 만들고 싶다 ... 나는 전체 화면을 채우고 싶지 않다. 결국, 내가 쓰고있는 카드 게임은 플레이어 당 12 장의 카드를 갖게 될 것이므로, 모든 것을 주요 활동에 맞출 수 있어야합니다. 내가 혼동스러워하는 부분은 각 카드를 별도의 객체로 작성한 다음 동적으로이를 주요 활동에 추가하는 방법입니다. 귀하의 응답에 따라, 그것은 별도의 활동으로 그들을 만드는 것 같습니다 갈 방법이 아닙니다 ... 나는 레이아웃에서 card.xml을 만드는 것으로 올바른 방향으로 가고 있습니까? – Kyle

답변

0

안드로이드 프로그래밍에 오신 것을 환영합니다!

뷰 (view 또는 card.xml의 루트 요소와 같은)를 확장하는 새로운 클래스를 작성하고 ur xml 파일을 사용하도록 설정하여 사용자 정의 구성 요소를 작성해야합니다. 가이드는 여기에서 확인할 수 있습니다. http://developer.android.com/guide/topics/ui/custom-components.html

이 맞춤 구성 요소에는 필요한 모든 것을 저장할 수 있습니다. 구성 요소를 사용하려면 xml 파일에서 버튼이나 텍스트 뷰를 사용하는 것처럼 사용하십시오. 내가 게시 한 링크에서 방법을 확인할 수 있습니다.

+0

유망 해 보입니다. 간단히 말하면 링크를 읽었고, 가장 논리적 인 것처럼 ImageView를 확장하고 확장하기로 결정했습니다 (이 카드는 기본적으로 이미지입니다). Eclipse는 하나의 인수 (Context)를 취하는 생성자가 필요하다는 것을 알려줍니다. 내 초라한 죄송합니다,하지만 컨텍스트 param 정확히 무엇입니까? 그리고 어떻게 내 card.xml 파일에서 클래스 내에 이미지 레이아웃을 잡을 수 있습니까? – Kyle

+0

xml 파일을 onFinishInflate() 메소드에서 팽창시켜 사용할 수 있습니다. ((Activity) getContext()). getLayoutInflater(). inflate (R.layout.card, this); 다음은 이에 대한 또 다른 짧은 안내서입니다. http://maohao.wordpress.com/2009/08/27/building-mix-up-custom-component-android/ 컨텍스트가 무엇인지 설명하고 왜 컨텍스트가 존재하는지 설명합니다. 나를 위해 열심히, 그것을 시도 구글. – softarn

+0

ok 다른 빠른 질문. Card라는 ImageView를 확장 한 클래스를 만들었습니다. main.xml 파일에 새 클래스에 대한 참조를 넣으려고하면 컴파일되지 않습니다. 그러나 ImageView로 변경하면 잘 컴파일됩니다. mail.xml (Main Activity)에 노출 시키려면 Card 클래스에서 무엇을해야합니까? – Kyle

관련 문제