마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

클래스 상속 등등... 어떻게 만들어야 잘만드는걸까요?

0 추천

안녕하세요.

버튼4개를 띄우고 클릭하면 다른 레이아웃에다가 정보를 띄워주는 애플리케이션을 만들려고합니다.

아래는 어제동안 짠 코드입니다.

 

 

 

 

 

 

 

 

이건 가장먼저 뜨는 레이아웃이구요. 4개의 버튼을 띄우고 클릭을 입력받습니다.

 

 

버튼마다 이렇게 디자인되있구요. 클릭했을때 onClick을 호출합니다.

 

 

 

 

메인 소스코드인데요. 보시다시피 아직 기능은 구현하지않고 뼈대를 만들었습니다.

onClick에서 각각버튼의 이벤트를 처리합니다.

 

 

 

 

a 버튼을 눌렀을때 띄울 레이아웃을 정의하는 클래스를 새로만들었습니다.

이 소스코드에서는 a를 눌렀을때 전화번호를 가져다가 화면에다가 보여주는 기능을합니다.

 

 

 

 

 

 

 

 

질문은..

여기서부터 어떻게 짜야될지 감을 못잡겟습니다.

자바책피고 봐도 뭘 가져다 써야할지 잘 모르겠고 말이죠.

 

제가 지금까지 한 상태에서 뭔가 조언해주실만한게 있을까요?

가령.. 클래스는 이렇게 짜라..라던가..

 

case에서 레이아웃을 만들려면 새 레이아웃파일을 만들어서 리스트뷰값을 수정해서

setContentView함수를 호출하면 되는건가요? 아니면 다른방법이있나요?

 

전화번호를 가져오는 소스가 아래라고해서

import android.telephony.TelephonyManager;

새로만든 클래스에다가 붙여놓았더니

The method getSystemService(String) is undefined for the type PersonalInfo

이런 에러가 나더라구요.

뭔가 구조를 잘못짠건가요?

 

마지막으로 계속해서 컨텍스트라는걸 보게되는데..

이건 왜 필요한거죠?

 

개발경험이 많이없다보니 무엇을 질문할지도 잘 모르겠네요.

읽어주셔서 감사합니다.

봉쿠탁 (310 포인트) 님이 2014년 3월 24일 질문
봉쿠탁님이 2014년 3월 24일 수정

2개의 답변

+1 추천
 
채택된 답변

설계의 기본은 무엇을 만들 것이냐? 는 물음이 우선인데

글쓴님이 아직 구체적인 목적없이 막연하게 진행하고 계셔서 뭘해야할지 정리가 되지 않으신것 같네요.

 

특별한 목적없이 간단하게 이벤트 드리븐형식을 따라 연습용 앱을 만들어보실거라면

class액티비티+xml레이아웃 조합으로 구성하시고 각 버튼에 인텐트로 연결해주시면 될거구요

하나의 액티비티에는 하나의 기능만을 넣는다고 생각하시고

각각 독립적인 코드로 만드시는 것을 추천합니다.

 

전화번호를 가져오는 소스가 아래라고해서

import android.telephony.TelephonyManager;

새로만든 클래스에다가 붙여놓았더니

The method getSystemService(String) is undefined for the type PersonalInfo

이런 에러가 나더라구요. 뭔가 구조를 잘못짠건가요?

 

코드 상에서 어떻게 적용하셨는지 알려주셔야할 것 같아요~

 

마지막으로 계속해서 컨텍스트라는걸 보게되는데..

이건 왜 필요한거죠?

 

저도 q1212님 처럼 자세히는 모르지만 ㅋㅋ 저는 포커스(?) 라고 생각되네요

현재 보이는 화면에 접근 및 조작을 하려면 잡고 있어야하고 다른쪽에서 사용하려면 넘겨줘야하는 뭐 그런?!

초보개발자ㅠ (33,870 포인트) 님이 2014년 3월 24일 답변
봉쿠탁님이 2014년 3월 25일 채택됨
+2 추천
일단 버튼 클릭시 레이아웃을 다시 만들어서 보여주기 보다는 Intent를 이용한 다른 액티비티를 띄우는 쪽으로 생각하시고요.

액티비티관리는 OS단에서 스택으로 관리 되기 때문에 뒤로가기 키 등의 이벤트에도 잘 대응합니다.

Context는 저도 자세히는 설명드릴수 없지만 어플리케이션을 구성하는 정보들이 있는것으로 보시면 될겁니다.

이 녀석이 있어야 Activity가 실행되며 보여줄수있는것이고 뭐 OS를 그런식으로 만들었으니 필요한놈이라 보면 될듯.
q1212 (26,020 포인트) 님이 2014년 3월 24일 답변
...