• 1나루토매니아
  • 2뱅이
  • 3푸타코타
  • 4완벽그자체
  • 5해삼
  • 1뱅이
  • 2나루토매니아
  • 3알짜배기
  • 4뱅이
  • 5빙그레우유
액티비티?!-2.버튼에 생명을 불어넣자!
연속출석 :
1일 랭킹 : 6,397위 상사3
90%
90% (434 /480)
  • 댓글 12 |
  • 추천 6 |
  • 조회 7229 |
  • 2011-05-28 (토) 20:55
    이번 시간에는 좀 더 많은 액티비티와 버튼, 그리고 리스너 추가로 버튼들의 기능 활성화에 대해 배워보겠습니다~^^
    참고로 오늘 강좌는 상당히 깁니다. 각오하고 들어오세요~
    두편에 나누기는 애매한 내용인지라 그냥 길게 했습니다~^^

    일단 저번시간의 확장의 의미라 저는 MultiAct2로 프로젝트를 만들겠습니다.
    프로젝트를 하나 생성해 줍니다~

    매니페스트파일을 들어가서 어플리케이션 탭에 가시면 Aplication Nodes가 보입니다.
    여기에 우리가 필요한 액티비티들을 만들겁니다. 한 3개만 만들어보죠~
    ADD를 누르면 뜨는 창에서 Activity를 선택하고 OK를 누릅니다.
    그러면 오른쪽에 Attributes for Activity라는 창이 뜨면서 방금 추가한 액티비티에 대한 정보를 바꿀수 있습니다. 창을 보시면 Name에 별표가 되어있고 줄이 그어져 있는데 그것을 클릭합니다.

    뜨는 창에서 이름을 두번째 액티비티니 SecondAct로 해주시고~Finish를 누르시면
    SecondAct.java가 자동으로 생성되며 창이 뜹니다. 똑같이 ThirdAct까지 만들어주세요

    제대로 만들면 어플리케이션 노드에 위와같이 세개의 액티비티가 생성되어있을겁니다.

    보시면 java파일은 3개가 만들어졌지만 layout폴더에는 FirstAct와 연결되는 main.xml파일 밖에 없습니다.
    레이아웃을 설정할때는 xml이 안정성이 높다고 했으니 Second와 Third에 해당하는 xml도 만들어줍시다

    layout폴더에서 오른쪽 클릭을 하고 New에 Android XML File을 클릭합니다.

    File부분에 second.xml이라는 이름을 치고 layout을 선택하고 Finish를 누릅니다.
    third.xml도 같은 방식으로 만들어줍니다. 그다음

    벨류의 스트링.xml파일로 들어가서 우리가 쓸 스트링 값들을 추가합시다.
    전시간에 했던 사항이니 name과 value에 들어갈 내용만 알려드리겠습니다.
    우리가 필요한 값들은(앞의 영어가 name값 뒤의 한글이 value값입니다.)
    first_act 첫번째 액티비티입니다.
    second_act 두번째 액티비티입니다.
    third_act 세번째 액티비티입니다.
    prev 이전
    next 다음
    top 처음
    end 마지막
    위의 7가지 스트링 값을 만들어줍니다.

    위와 같이 필요한 스트링 값들이 다 만들어 졌습니다.
    이제 main.xml을 열어서 레이아웃 코드를 수정합시다.

    main.xml수정소스입니다. 자세한 내용은 전편에 했으므로 넘어가겠습니다.
    second,third xml파일 소스도 수정해 주어야 합니다.

    second.xml

    third.xml
    레이아웃 관련 3가지 xml파일은 완성되었습니다. 이제 우리에겐 3개의 액티비티와 각 액티비티 화면의 버튼과 스트링 값이 모두 준비 되었습니다 .이젠 이것들을 연결하고 버튼들을 작동하게 만들겠습니다.

    secondAct.java파일을 열어서 onCreate 메서드에 setContentView를 추가해줍니다.
    이것은 우리가 만들어놓은 second.xml 레이아웃을 뷰로 설정하겠다는 이야기입니다.

    ThirdAct에도 추가해주시구요~
    그럼 일단 뷰는 다 설정이 끝났습니다.
    이젠 버튼들이 기능을 제대로 하게 해줘야 겠죠?
    그것이 바로 리스너 입니다. 리스너는 이벤트에 대해 관장하는 객체입니다.
    이제부터는 조금 복잡한 내용들이 나오니 집중하셔야 됩니다~(지금까지도 하셨으리라 믿어용~)
    첫번째 페이지로 설명을 자세히 하고 두번째,세번째 페이지는 소스수정결과화면만 올려드리니 이해 안되는 분들은 댓글로 질문 남겨주세요~

    임포트 해주어야될 목록입니다. 각각이 언제 필요한지는 주석으로 달아 놓았구요~

    소스 내용입니다. 각각의 의미는 역시 주석으로 달아 두었습니다.

    SecondAct.java

    ThirdAct.java
    여기까지 소스를 다 수정하셨나요?^^제가 두번째,세번째는 스샷을 찍기위해 주석을 다 지웠는데요.
    주석은 항상 다는 습관을 하시는것이 좋습니다. 프로그램이 길어지면 본인도 나중에 이게 뭘할려고
    만든 소스인지 헤갈릴때가 있거든요.주석은 //와 이렇게 두가지 방법이 있는데요
    //는 //를 포함한 한줄이 주석처리 되는겁니다.
    는 사이에 있는 내용이 주석처리 되는겁니다.
    자 여기까지 하면 버튼에 생명을 불어 넣어 주었습니다.
    하지만 약간 수정을 하자면 이 방식으로 하면 버튼을 클릭할때마다 현재 액티비티는 놔두고
    계속 쌓게 되어 효율이 좋지 못합니다. 그래서 버튼 클릭할땐 현재의 액티비티는 날리고 버튼이
    원하는 액티비티를 띄우는게 좋습니다. 그러므로 SecondAct와 ThirdAct의 소스의 버튼소스에
    finish();를 추가해주어야 합니다.

    이런식으로 퍼스트를 제외한 세컨드와 떨드에 있는 버튼 소스에 finish();를 추가하고 다 저장한 다음 실행해 봅시다!



    자 완성되었고 버튼도 잘 작동 합니다. 오늘 강좌는 정말 길었던거 같네요...^^
    그래도 이제 뭔가 클릭하고 움직이니 어플같은 맛이 좀 나기 시작하는것 같죠?^^
    벌써 지치시면 안됩니다~모두 힘을 내세요~~^^
    다음강좌는 버튼을 클릭하면 집으로 전화가 걸리게 해보겠습니다.
    권한부여에 대해 배울 예정입니다~~^^
     
     




    [이 게시물은 더어플님에 의해 2016-07-12 15:23:56 개발 꿀팁에서 복사 됨]
    찰라의유혹 2012-03-15 (목) 07:58:33
    괜히 한번 들어와 봤습니다만   
    대단들 하시네요.
    난 언제 이런거 배우지??
    tpgns1 2011-12-28 (수) 17:07:46
    감사합니다!!! 근데 이거보고 따라했는데도 중간에 Sorry 뜨고 하면서 힘들었네요....
    그래도 최대한 안보고 고치려고 노력하고 했습니다.ㅎㅎㅎ 정말 좋은 자료인거같아요(항상생각ㅠㅠ)
    1시간30걸린듯.....
    앙상블 2011-12-07 (수) 14:41:54
    좋은 자료 감사합니다.
    점점 어려워지는거 같아요 힘네서 해야겠네요.
    luvsushi 2011-10-01 (토) 19:22:25
    firstAct.java에서 import문을 쓰니 자동적으로 없어지네요?... ;;;;
    오류인가요?
    굿쏘 2011-05-30 (월) 22:56:08
    훌륭합니다^^;; 강좌가 더 빨라졌으면 하는 소망이 있습니다~~ ㅎㅎㅎ 농담입니다. 따라하는재미에 삽니다. 담편이 팍팍 기대됩니다
         
         
    레오쏭 2011-06-01 (수) 21:02:46
    아무래도 6월은 좀 바빠서 빨리 연재하긴 힘들것 같습니다..ㅎ
    그래도 칭찬감사합니다~
    fleimsl 2011-05-30 (월) 00:50:06
    감사합니다. 스크랩해 가요~*^.^*
         
         
    레오쏭 2011-05-30 (월) 16:40:38
    네네~~^^
    ♣서로해♣ 2011-05-29 (일) 10:16:55
    에긍...점점 어지러워지네요?
    보면 볼수록 머리 아포요.ㅠㅠ
    전 과정도 다 이해 못했는데...아~이~고~..ㅠㅠ
         
         
    레오쏭 2011-05-29 (일) 13:50:06
    하실수 있으실겁니다~~화이팅!
    믿어라 2011-05-28 (토) 21:15:06
    감사합니다. 스크랩해 가요~*^.^*
         
         
    레오쏭 2011-05-28 (토) 22:16:38
    네네~~^^
    댓글을 작성하시려면 로그인을 하셔야지만 작성가능합니다. [로그인하기] [회원가입하기]
    번호 제목 글쓴이 추천 조회 작성일
    공지글 이거슨 꿀팁!! 작성 가이드 v1.1 (2013-11-13) +174 더어플 42 135553 13/03/12
    4455 알뜰폰 1Mbps 3Mbps 무제한요금제 최저가2개 iamgood 0 891 24/05/03
    4454 알뜰폰 쓸 때 인터넷과 결합하려면 iamgood 0 2530 24/04/15
    4453 해외여행 갈 때 데이터로밍 간편하고 싸게 쓰는방법 iamgood 0 2940 24/04/08
    4452 기프티콘은 컬쳐랜드 쿠폰거래소에서 이용하는 게 좋아요 리메인2 0 3078 24/04/05
    4451 클리오 루즈힐 블룸 다이아 립스틱 5종 홈쇼핑 예정 리하린 0 3368 24/04/03
    4450 데이터 10GB+1Mbps 무제한 6,500원부터 쓸수있네요 iamgood 0 3379 24/04/01
    4449 3월 알뜰폰 가성비 평생요금제 2가지 6GB 6천원과 10GB … iamgood 0 4257 24/03/18
    4448 컬쳐랜드에 쿠폰거래소가 새롭게 생겼어요 리하린 0 4642 24/03/12
    4447 3Mbps 속도 데이터무제한 최저가 검색 iamgood 0 4732 24/03/11
    4446 컬쳐랜드로 호텔 예약하면 좀 더 싸게 갈 수 있어요 리하린 0 5491 24/02/27
    4445 해외여행 데이터로밍 일본 태국 대만 최저가보장 iamgood 0 5472 24/02/19
    4444 기간통신사가 운영하는 데이터센터 MDC iamgood 0 5110 24/02/13
    4443 밀리의서재 무료 구독권 kt알뜰폰 2,200원 무제한요금제 iamgood 0 5242 24/02/02
    4442 KT 갤럭시S24 사전예약(~1/25) 라이브컬러 0 5695 24/01/25
    4441 LG유플러스 인터넷 결합 가능한 알뜰폰 iamgood 0 5734 24/01/18
    4440 데이터 20GB 추가제공이벤트 좋네요 iamgood 0 6219 24/01/08
    4439 1월 추천요금제 데이터 6기가0원과 데이터무제한 6,600… iamgood 0 5968 24/01/02
    4438 아이폰 쓰면 해외여행때 굳이 현지유심 쓸 필요없어요 iamgood 0 7199 23/12/11
    4437 넷플릭스 광고형 스탠다드 KT결제 매달 1,000원 할인 달팽ee 0 6959 23/12/11
    4436 데이터10기가 990원부터 3Mbps무제한 9,000원 iamgood 0 7255 23/12/01
    4435 아싸컴에서 천만원 이벤트 하는 거 찾았다 +1 리하린 1 7341 23/11/20
    4434 skt망 알뜰 통화 데이터 무제한 요금 7개월 5,500원부터 iamgood 0 6988 23/11/15
    4433 우체국에서 판매1위했던 알뜰폰 요금제 iamgood 0 7099 23/11/08
    4432 알리익스프레스 프로모션 기대해보세요! 최대 50% 할인! 베스토 0 6499 23/11/04
    4431 통화 데이터무제한 7개월할인 최저가 13,000원 iamgood 0 6405 23/11/02
    4430 알뜰폰 데이터10GB 12개월간 무약정 990원 iamgood 0 6451 23/10/24
    4429 스마트폰 평생 2,000원 요금제와 태블릿전용 6,560원요… iamgood 0 6156 23/10/16
    4428 skt 알뜰폰 무제한 요금제 3종 2,200원부터 1,000명 한… iamgood 0 5613 23/10/11