• 1나루토매니아
  • 2뱅이
  • 3푸타코타
  • 4완벽그자체
  • 5해삼
  • 1뱅이
  • 2나루토매니아
  • 3알짜배기
  • 4뱅이
  • 5빙그레우유
버튼?!텍스트뷰?!
연속출석 :
1일 랭킹 : 6,397위 상사3
90%
90% (434 /480)
  • 댓글 4 |
  • 추천 4 |
  • 조회 2191 |
  • 2011-07-07 (목) 09:52
    이번시간에는 저번시간에 이어 인터페이스중 하나인 위젯에 해당하는 버튼과 텍스트뷰에 대해 알아보겠습니다.
    버튼은 일반적인 버튼으로도 사용할수 있지만 커스터마이징에 이은 개발자의 입맛대로 바꿀수 있어 참 좋은 위젯중 하나죠. 버튼도 역시 android.view.View클래스를 상속 받은 클래스이므로 대부분의 이벤트를 처리할수 있으며 이미지로 된 버튼도 만들수 있지만 자바와 동일하게 ImageButton이라는 클래스도 지원하므로 다양하게 이용할 수 있습니다.
    보통 모든 위젯들은 구현하는 방법은 두가지가 있습니다. 하나는 저번에 전화어플이나 페이지 넘어가는 어플만들때 처럼 XML로 만드는 방법과 자바소스를 이용한 방법이 있습니다. XML로 보통 만들며 그것이 안정성이나 확장성에 좋아 많이 사용하지만 동적생성이 불가능하여 자바소스로 구현해야될때도 있습니다. 동적생성이란 자료를 로딩하는데 자료의 개수만큼 위젯이 자동으로 추개해야 한다면 자바코드로 해주어야 합니다. 오늘은 자바코드로 하는것에 대해 알아보겠습니다.
    또한 텍스트뷰도 똑같이 위젯중 하나입니다.
    자 그럼 실습을 해봅시다
    프로젝트를 하나 만들어 주시구요~물론 안드로이드 2.2버젼과 API8버젼을 사용하셔야 되고 나머지는 각자 원하시는 이름으로 해주세요~^^(프로젝트 만드는 법을 모르시는 분들은 이 전의 강좌를 보고 오십시오..이제는 완전 초보적인 이야기는 빼고 넘어갈것입니다~)
    오늘은 xml을 안건드리므로 오히려 이전의 실습보다 편할수도 있지만 자바를 모르시는분은 이게 왜 다르지?라고 생각할수 있습니다. 그건 하면서 설명을 하겠습니다.

    소스는 위와 같습니다. 하나씩 내려가며 설명을 해보죠..위에서 import해준것중에 widget에 있는 것들은 저번에 많이들 보셨을것입니다. 처음 보는것이 하나 보이죠? android.view.ViewGroup.LayoutParams 이것은 위젯들의 배치를 결정짓는 클래스입니다.XML로 만들때 쓴 FILL_PARENT,WRAP_CONTENT같은 값들을 쓸수 있게 해줍니다.
    그리고 리니어레이아웃 형태의 레이아웃을 하나 만들어 주고 그 레이아웃 위에 텍스트뷰를 얹어주고(layout.addView(textView)) 그 다음 버튼을 얹어 주었습니다.(layout.addView(button,lpFillWrap))그리고 두개가 올라간 레이아웃을 setContentView를 이용하여 액티비티에 나오도록 해준것입니다...^^
    그러고 실행을 시키시면

    이런식으로 나오게 됩니다~다음시간에는 레이아웃에 대해 본격적으로 들어가보도록 하겠습니다~^^


    [이 게시물은 더어플님에 의해 2016-07-12 15:23:56 개발 꿀팁에서 복사 됨]
    xkzkxjx 2011-09-09 (금) 21:49:03
    감사함당ㅎㅎㅎㅎㅎㅎㅎㅎㅎㅎㅎㅋ
    레지스트 2011-09-06 (화) 16:18:38
    꾸준한 강좌 대단하십니다. 올만에 프로그래밍이나 해야겠네요ㅎ
    ♣서로해♣ 2011-07-07 (목) 16:55:55
    반가워요 꾸준히 올려주시고 많은 유저분들에게 도움 되리라 확신 합니다.
    저도 열심히 배워 볼까 하는데 이해가 안가는 부분이 많아요.
    하지만 읽어보고 또 읽어보고하니 쬐끔은 이해가 되더군요.
    항상 감사 드리고요. 레오쏭님 화이팅.
         
         
    레오쏭 2011-09-07 (수) 08:40:03
    서로해님이시군요~^^
    댓글을 작성하시려면 로그인을 하셔야지만 작성가능합니다. [로그인하기] [회원가입하기]
    번호 제목 글쓴이 추천 조회 작성일
    45 Android Virtual Device(AVD) 사용법 GNCkorea 1 6307 12/08/09
    44 안드로이드 프로젝트 생성 및 실행 GNCkorea 0 2332 12/08/09
    43 안드로이드 강좌 1 - 어플리케이션 개발 시작하기. SDK … GNCkorea 1 3373 12/08/09
    42 현재 위치 얻기 간단한 팁~! GNCkorea 0 1572 12/08/07
    41 이번에 개발한 쇼핑몰 앱 소스 공개합니다.(Android, iO… GNCkorea 0 7562 12/08/07
    40 이클립스 내에서 안드로이드 제공하는 소스 난독화(ProG… GNCkorea 0 5176 12/08/07
    39 Low memory killer / win death / Gallery 선택후 프로… GNCkorea 0 3351 12/08/07
    38 [이벤트] 프로그램강좌 포럼의 활성화를 위하여... +4 쨩쵸딩 4 1601 12/05/21
    37 자바강좌 예제.1 글자를 넣어보자 +6 ★CsJ★ 6 2081 12/02/28
    36 자바강좌 1-2 (자바의 데이터 타입과 연산자) +3 ★CsJ★ 3 2112 12/02/27
    35 자바강좌 1-1 (자바의 데이터 타입과 연산자) +2 ★CsJ★ 2 2974 12/02/26
    34 JAVA 언어 기초 +2 쿠미야 3 1869 12/02/14
    33 안드로이드 프로그래밍 Tip +3 지워니 4 3655 12/01/27
    32 Android 키보드 숫자형으로 시작하게 하기 +1 지워니 1 2303 12/01/27
    31 [C언어]강좌3. 내용을 출력해보자. +21 퉁퉁이 14 2700 11/10/16
    30 [C언어]강좌2. 간단한 실습준비 마무리 퉁퉁이 2 2211 11/10/16
    29 [C언어]강좌1. C언어를 배우기위해 +1 퉁퉁이 5 3332 11/10/16
    28 [경고를해보자]토스트?!토스트란무엇인가(2) +2 레오쏭 2 1968 11/10/11
    27 [펌-초보금지]RAM최적화/LED밝기/내외장SD카드/ 스크립… +9 레오쏭 5 4767 11/10/07
    26 [경고를해보자]토스트?!토스트란무엇인가(1) +1 레오쏭 4 3307 11/10/02
    25 슬라이딩 도어를 만들어 볼까요? +3 레오쏭 3 2796 11/10/02
    24 윈도우 사용자명 한글일때 에뮬레이터 오류 해결 방법 +3 레오쏭 3 3412 11/09/26
    23 추석을 기점으로 다시 강좌가 올라갑니다~ +6 레오쏭 4 1796 11/09/03
    22 버튼?!-라디오,체크,토글버튼 레오쏭 4 3621 11/08/10
    21 인터페이스?!-키보드로 타이핑을 해볼까? +8 레오쏭 8 5917 11/07/19
    20 인터페이스?!-레이아웃 +1 레오쏭 4 2656 11/07/10
    19 버튼?!텍스트뷰?! +4 레오쏭 4 2196 11/07/07
    18 인터페이스?? +2 레오쏭 5 2480 11/07/03