디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

형들 자바 (안드로이드)질문 [배열, 객체, 참조]

앍이게뭐야갤로그로 이동합니다. 2012.01.08 15:54:05
조회 144 추천 0 댓글 0


일단 안드로이드로 비밀번호 해제하는 버튼 만드는거 하다가 생긴일인데.

밑에 test라는 ButtonProperty 객체는 실험으로 만든거야
test 객체로는 실행이 잘 되더라고.

근데 이상하게
ButtonProperty [][] buttonProperty;
이렇게 배열로 만들어서

 buttonProperty = new ButtonProperty[3][3];
요런식으로 초기화하고

사용하면 전혀 안된다. 매서드만 안되나 싶어서 해당 객체으 매서드 전부 삭제하고
     boolean select = false; //선택여부
이렇게 초기화되는 값만 참조만 해보도록 시켜도 에러가 뜨더라.

호출방법은
if(buttonProperty[1][1].select)
if(buttonProperty[0][0].select)

이런 방법으로 해봤어. 둘다 에러더라. 안드로이드가 에러메세지가 안떠서 짜증나네

결국 이중포문 내부 지워버리고
바깥에 이걸 썻거든?
      test= new ButtonProperty();
      test.drawButton(1, 1);
      test.drawButton(0, 0);
      test.drawButton(2, 2);
근데 이건 또 잘 그려지더라.

곰곰히 생각해보니 솔직히 저 객체를 배열로 안하고 내부의 rectF랑 셀렉트만 배열로 따로 만들어도 될것 같긴 한데.
일단 내가 알고 있는 개념사으로는
배열로 저런식으로 선언해서 사용해도 문제가 없어야 하는데 문제가 생기니까

왜그런지 정말 궁금하고 다음에는 이런실수 안했으면 좋겠어서 여쭈어봄

좋은 답변 부탁할게!


import android.app.Activity;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.RectF;
import android.os.Bundle;
import android.view.View;

public class PassActivity extends Activity {
 Canvas canvas;
 Pass pass;
 int buttonSize = 50;
 int buttonSpace = 30;
 int buttonStartLocationWidth = 20;
 int buttonStartLocationHeight = 20;
 int internalButtonSize = -15;
 Paint YellowPaint;
 Paint RedPaint;
 Paint GreenPaint;
 ButtonProperty [][] buttonProperty;
 ButtonProperty test;
 
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        pass = new Pass(this);
        setContentView(pass);
    }
   
   
    public class Pass extends View{
     public Pass(Context context) {
   super(context);
   canvas = new Canvas();
   canvas.drawColor(Color.WHITE);
   YellowPaint =  new Paint(Paint.ANTI_ALIAS_FLAG);
   YellowPaint.setColor(Color.YELLOW);
   RedPaint =  new Paint(Paint.ANTI_ALIAS_FLAG);
   RedPaint.setColor(Color.RED);
   GreenPaint =  new Paint(Paint.ANTI_ALIAS_FLAG);
   GreenPaint.setColor(Color.GREEN);
   buttonProperty = new ButtonProperty[3][3];
  }
     protected void onDraw(Canvas canva){
      canvas = canva;
      for(int i = 0 ; i < 3 ; i++)
       for(int j = 0 ; j < 3 ; j++){//j는 x축 i는 y축을 말함.
            //buttonProperty[j][i].drawButton(j,i);
       }
      
      test= new ButtonProperty();
      test.drawButton(1, 1);
      test.drawButton(0, 0);
      test.drawButton(2, 2);
      }
     }
   
    public class ButtonProperty{
     RectF rt1; //내부 원
     RectF rt2; //외부 원
     boolean select = false; //선택여부
     
     public void drawButton(int x, int y){
      x =  buttonStartLocationWidth+(buttonSize+buttonSpace)*x; //원의 LEFT 위치
      y =  buttonStartLocationHeight+(buttonSize+buttonSpace)*y;//원의 TOP 위치
      drawRt(x, y);
      drawRt2(x, y);
     }
     public void drawRt(int x, int y){
      rt1 = new RectF(x, y, x+buttonSize, y+buttonSize); //큰거
      canvas.drawOval(rt1, YellowPaint);
     }
     public void drawRt2(int x, int y){
      rt2 = new RectF(x-internalButtonSize, y-internalButtonSize, x+buttonSize+internalButtonSize, y+buttonSize+internalButtonSize); //작은거
      if(select)//선택된것이면 빨강색, 선택안된것이면 녹색
       canvas.drawOval(rt2, RedPaint);
      else
       canvas.drawOval(rt2, GreenPaint);
     }
    }
}
   
  

추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 이성 보는 눈 없어서 걱정되는 스타는? 운영자 25/11/10 - -
AD 저녁 뭐먹지? 오늘의 메뉴 추천! 운영자 25/10/31 - -
297952 이정도 스펙이면 대기업si 뚫을수있냐 [8] 평가좀(110.15) 12.01.10 568 0
297951 모바일 웹페이지(스마트폰용)을 개발할려고 하는데 책좀 추천해줘.. (112.152) 12.01.10 71 0
297950 부모님 결혼기념일 선물 적당한거 머 있을까요~? [3] 양랩(220.119) 12.01.10 106 0
297949 나 프로그래밍에 소질이 없는거지? [6] C초보 ㅋ(121.157) 12.01.10 198 0
297948 정중하게 부탁드립니다 [9] 헬프미(125.177) 12.01.10 110 0
297945 2차원 배열을 해서 곱을 구하는거같은데 핼프좀 [1] C초보 ㅋ(121.157) 12.01.09 78 0
297943 간단한 자바스크립트 질문여.. [3] Partyup갤로그로 이동합니다. 12.01.09 75 0
297942 게임 프로그래밍 하기 좋은 언어랑 책좀 추천요 [2] 야요이갤로그로 이동합니다. 12.01.09 97 0
297940 ************ 오늘의 문제 **************** [7] 다채(211.230) 12.01.09 104 0
297939 배열에 있는 정보를 문자열로 만드는거 질문좀 드릴게요 [2] aaa(175.207) 12.01.09 44 0
297937 c# 루프 돌아가다가 멈춤 [4] ㅊㅊ(61.75) 12.01.09 113 0
297936 형 질문 [1] 쒦뚫쉚뚫샒휆뚫뚫쒦갤로그로 이동합니다. 12.01.09 39 0
297933 JAVA 온라인강의로도 취업가능한가요? [1] 촙초보(116.40) 12.01.09 150 0
297932 썬더볼트 기술 쩌네.. ㅅㅂ... usb sata다 버리고싶다 Stan(220.244) 12.01.09 95 0
297931 POREN or BICNS 안드로이드개발자 채용확정자 국비지원 전원취업교 국비지원갤로그로 이동합니다. 12.01.09 43 0
297929 형들 이진트리 반복문을 통한 순회 코드인데요.... [6] 김성엽(203.253) 12.01.09 131 0
297928 php 뉴빈데 php자격증이있음?? [1] 늅늅(121.130) 12.01.09 110 0
297926 c언어 과젠데 졸 어렵다 ㅜ.ㅜ [10] 메카돼지(14.37) 12.01.09 154 0
297925 형들 이클립스 작업창 질문점.. [5] ㅇㅇ(61.109) 12.01.09 115 0
297923 c초보가 올리는 질문 글 입니다요... [2] C초보(114.206) 12.01.09 55 0
297921 횽들! 나 오늘은 배열을 공부했어! [4] 쿠마코갤로그로 이동합니다. 12.01.09 78 0
297920 간만에 웹 제작을 해야해서 선택한 프레임웍인데 좀 봐줘 엠비씨(183.1) 12.01.09 57 0
297919 밥먹고 왔는데 ㅋㅋ 곽팀장 너 나 너무 좋아하는거 아니냐 ㅋㅋ 캐db닭(115.92) 12.01.09 66 0
297918 형아들 겔러리 짤중에.....ㅠㅠ 정통27갤로그로 이동합니다. 12.01.09 38 0
297917 횽들아 요즘 자바공부하는데 상속 질문좀 할게 [8] 메리프갤로그로 이동합니다. 12.01.09 87 0
297916 슈레기 같은 SVN -=- [3] Ynobe갤로그로 이동합니다. 12.01.09 101 0
297915 형들 이거 미친짓이야?? 내 친구가 취업 안하고 있길래 뭐하냐 물어봤는데 [5] ㅁㄴㅇㄹ(59.30) 12.01.09 197 0
297913 횽들~ 넷북으로 자바/JSP/MYSQL 공부는 할수잇음? [2] 조자바(121.140) 12.01.09 303 0
297912 망하는 제품의 흔한 개발 과정.avi [4] 때릴꺼야?(116.40) 12.01.09 194 0
297911 "GDI객체를 이용한 이미지 트래킹" 기술은 어디서 배우는거임??.. [1] 제이드(175.122) 12.01.09 49 0
297910 형들 stack에서 팝 연산있잖아요 [3] SoliCode갤로그로 이동합니다. 12.01.09 54 0
297906 학원 프로젝트 고민... [6] 찹쌀뀨갤로그로 이동합니다. 12.01.09 153 0
297905 곽노현팀장 너야말로 뭔낯짝? ㅈㅈㅈ(116.125) 12.01.09 54 0
297902 성님들 ㅠㅠ 폴더안에있는 파일만 밖으로끄집어내는 방법좀알려주세요 [2] 유동찐따ㅠㅠ(14.55) 12.01.09 92 0
297901 맥 vs PC [14] ㅇㅇ(211.115) 12.01.09 131 0
297900 html 질문 드려요.. [5] html(203.171) 12.01.09 70 0
297899 C에서 fopen / 포인터 사용문제.. 어느 방법이 더 나을까요? [3] 에버리치갤로그로 이동합니다. 12.01.09 63 0
297897 DB 고수 or 프로시져에 대해서 좀 잘아는횽 소환 [7] 캐db닭(115.92) 12.01.09 100 0
297896 형들 만들고 싶은게 있는데 [4] 쒦뚫쉚뚫샒휆뚫뚫쒦갤로그로 이동합니다. 12.01.09 99 0
297895 신봉선도 꾸미기 나름이지 않음? [9] 캐미친닭(115.92) 12.01.09 159 0
297894 야 c언어 java 이런거 배우기 어렵냐? [8] 트럴성기사갤로그로 이동합니다. 12.01.09 206 0
297893 형들 질문좀용 [3] 쒦뚫쉚뚫샒휆뚫뚫쒦갤로그로 이동합니다. 12.01.09 52 0
297892 레지스트리에 관련된 질문. 솔직히 질문도 막막한데 답변주면 진짜 갓인증 [10] 한번 풀어봐(59.22) 12.01.09 90 0
297890 요즘 신봉선이 이뻐보인다. [7] 캐미친닭(115.92) 12.01.09 124 0
297889 인류의 조상이라는데? [1] 이모군(175.114) 12.01.09 88 0
297888 횽들 이거 머가 잘못된거야? [2] 람퐈니갤로그로 이동합니다. 12.01.09 60 0
297885 월요병 극복 하는 방법 [3] ㅇㅇㅇ갤로그로 이동합니다. 12.01.09 78 0
297882 소녀시대 과거사진, CF 무리수+난감 콘셉트 '소시에게도 굴욕 과거가?' 쿄스케갤로그로 이동합니다. 12.01.09 70 0
297880 조선은 돈으로 움직이지 않는 기적같은 나라였음 [2] 1(183.104) 12.01.09 90 0
297879 에러 질문좀 아주아주 간단함 [2] 쒦뚫쉚뚫샒휆뚫뚫쒦갤로그로 이동합니다. 12.01.09 53 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

디시미디어

디시이슈

1/2