디시인사이드 갤러리

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

갤러리 본문 영역

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

앍이게뭐야갤로그로 이동합니다. 2012.01.08 15:54:05
조회 145 추천 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 - -
298160 인턴 3일째...... [4] 주시미갤로그로 이동합니다. 12.01.11 150 0
298158 지잡대 컴공 가면 어떻게 되냐? [3] 블럭갤로그로 이동합니다. 12.01.11 235 0
298155 아싸-아트 사이트 오픈 [1] [성대아싸]갤로그로 이동합니다. 12.01.11 119 0
298154 nhn소프트웨어 아카데미 갈라고 하는데 [3] 블럭갤로그로 이동합니다. 12.01.11 540 0
298151 [뉴스 TALK] 엔씨소프트, 직원 모두 프로그램 언어 시험 본다는데… [4] 쿄스케갤로그로 이동합니다. 12.01.11 269 0
298150 와 씨발 미쳤네 [1] -ㅂ-(210.90) 12.01.11 70 0
298149 근데 곽팀장님 아이디 이제 바꿀 생각 없으심?? [2] ㅁㄴㅇㄹ(59.30) 12.01.11 124 0
298148 메모리 못읽게 어떻게할까 [5] lucy_han갤로그로 이동합니다. 12.01.11 117 0
298144 난 마소느님의 영광 아래 살리니 [3] 땡칠도사갤로그로 이동합니다. 12.01.11 115 0
298142 형들 여기다 질문하면 에러 찾아줌? [1] ㅊㅊ(222.112) 12.01.11 48 0
298141 HTML5 가 정식 릴리즈 된다면... [14] 캐js닭(115.92) 12.01.11 195 0
298140 개쉛기가 존나 말렸는데 기어코 고시원에 들어가서 생활중인데.. [5] 쿄스케갤로그로 이동합니다. 12.01.11 118 0
298139 내가아는 어떤형은 프로그래밍 해서 3주동안 500 벌던데;; [5] ㅇㅇ(175.211) 12.01.11 200 0
298138 여기 도시락 싸다니는 프게이들 있어? [7] □ㅁ갤로그로 이동합니다. 12.01.11 94 0
298137 실력보다는 마인드 인거 같다 [2] □ㅁ갤로그로 이동합니다. 12.01.11 89 0
298136 한국 프로그램의 현실 이거.. 사실이냐?... [5] ㅇㅇ(175.211) 12.01.11 201 0
298134 컴돌이 여러분은 경영학 복수전공 함? [3] 최선생갤로그로 이동합니다. 12.01.11 115 0
298133 개잡대 컴공 nhn 취직 [5] ㅇㅇ(175.211) 12.01.11 391 0
298132 여자가 자기를 좋아하는지 진짜 아는방법... [3] 군대지원(222.101) 12.01.11 187 0
298131 곽팀장 잘왔따!!!!!!!!!!!!!!!!!!!!!!!!!!!! 캐곽팀장닭(115.92) 12.01.11 54 0
298128 여자가 자기를 좋아하는지 안하는지 확인법 □ㅁ갤로그로 이동합니다. 12.01.11 67 0
298127 헐 타과 수업 들으면 향수냄새 진동하나요? 군대지원(222.101) 12.01.11 47 0
298126 Linux 우분투로 깔았는데 괜찮은 or 필수 소프트웨어 추천좀 해주세요 [4] 개허접(128.208) 12.01.11 164 1
298124 Mysql 계정 권한주는데 안되요 ㅠㅠ [2] 에휴(203.171) 12.01.11 53 0
298123 근데 내 오른쪽 눈만 시력이 안좋아진게 [2] elwlwlwk갤로그로 이동합니다. 12.01.11 127 0
298121 해피투게더 재방보는데 [1] ㅋㄱ(183.96) 12.01.11 63 0
298120 아오 이제 자야겠다~~ 오늘 너무 버닝했네 거칠게갤로그로 이동합니다. 12.01.11 61 0
298119 난 아직도 여자들의 내숭과 거절을 잘 구분 못하겠어 -_- [1] 거칠게갤로그로 이동합니다. 12.01.11 140 0
298118 진짜 여자들의 위장술은 조심해야 한다 [1] 거칠게갤로그로 이동합니다. 12.01.11 196 0
298115 아무리 날고 겨도 등장 임팩트는 SES가 최고지 [5] 야요이갤로그로 이동합니다. 12.01.11 89 0
298114 걸그룹 중 베스트 오브 베스트를 뽑아보자!! [7] 거칠게갤로그로 이동합니다. 12.01.11 97 0
298113 걸그룹의 최고봉을 결정하자!! [10] 거칠게갤로그로 이동합니다. 12.01.11 114 0
298112 내가 아는 걸그룹 목록 [24] 거칠게갤로그로 이동합니다. 12.01.11 153 0
298111 진짜, 좋아요.~~Good.// [1] 학교가자갤로그로 이동합니다. 12.01.11 26 0
298110 같은 과로 얘도 갠찬치안스믑니까/ [5] ㅋㄱ(183.96) 12.01.11 161 0
298108 진심은 통한다는 말 따윈 이제 믿지않는다. 진심(211.221) 12.01.11 68 0
298106 내 공부 로드맵인데 좀 봐주라 [4] 도와주십시오(59.26) 12.01.11 197 0
298105 잠이 안온다. [1] ssonacy갤로그로 이동합니다. 12.01.11 55 0
298103 오픈지엘 조명쏘는데염.. ㅋㄱ(183.96) 12.01.11 48 0
298102 기초 기초 하는데 기초가 뭐임? [11] 뀨잉뀨잉(211.221) 12.01.11 213 1
298098 RCE 어떨까 [4] lucy_han갤로그로 이동합니다. 12.01.11 44 0
298097 [IT취업고민 끝~ 한국산업단지,중앙일보hta 전원채용확정교육] [5] 채용담당(219.255) 12.01.11 132 0
298095 체감 연봉 5천.. [13] K(125.186) 12.01.11 234 0
298094 스크린샷 깨짐현상에 대해 질문드려요 [1] ㅜㅜ(203.250) 12.01.10 50 0
298093 구조체 클래스??? [14] ㅋㄱ(183.96) 12.01.10 105 0
298092 형들 나 모든 확장자가 실행이 안됨... [3] 유동닉(183.108) 12.01.10 42 0
298090 디시 검색기능 좀 병신같이 바뀌지 않았음? [4] ㅇㅇㅇ(121.144) 12.01.10 174 0
298089 존내 멋진 공뭔들의 프로그램 배포방식.... [3] ㅅㄱㅅㄱㅅㄱ갤로그로 이동합니다. 12.01.10 127 0
298088 오랜만이에여 [3] 풀개미'ㅅ'갤로그로 이동합니다. 12.01.10 47 0
298087 아 공부하기 싫다 [4] 퐈응퐈응갤로그로 이동합니다. 12.01.10 71 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

디시미디어

디시이슈

1/2