디시인사이드 갤러리

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

갤러리 본문 영역

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

앍이게뭐야갤로그로 이동합니다. 2012.01.08 15:54:05
조회 162 추천 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/24 - -
AD 따뜻한 겨울나기! 방한용품 SALE 운영자 25/11/27 - -
298939 곽팀장도 회사 다니긴 하나보다??? 퓨리님(111.91) 12.01.16 76 0
298938 개심심횽..피자 배달말구.... [3] 캐맥북닭(115.92) 12.01.16 92 0
298936 해커꿈잡고 시작할라 하는데 뭐공부해야되나요 [4] 흑형아갤로그로 이동합니다. 12.01.16 178 0
298935 맥북 트랙패드 계속 쓰다보니깐... [1] 캐맥북닭(115.92) 12.01.16 65 0
298934 형들 자바로 게임 만드는 것 좀 질문할게요 [1] 좌파척결앞잡이갤로그로 이동합니다. 12.01.16 79 0
298933 Dev c++에서 지역변수 값 [2] ㅇㅋㅇ(183.96) 12.01.16 70 0
298931 공무원 업무강도의 진실을 알려줄게 [14] 싴보이갤로그로 이동합니다. 12.01.16 502 0
298930 앱개발할때 이미지 좌표같은건 개발자가? 디자이너가? (112.223) 12.01.16 59 0
298928 궁금한게 있는데 트위터나 페이스북 친구목록 연동할때... (112.223) 12.01.16 75 0
298927 횽들 비주얼스튜디오 2008 ;;; [3] 중학생(119.69) 12.01.16 91 0
298926 시언어 늅늅인데, for문 예제풀다가 막혔어 [3] 해피너스갤로그로 이동합니다. 12.01.16 99 0
298924 우으으 [2] ENBI(58.227) 12.01.16 44 0
298923 형이 재미있는 얘기 해줄게ㅋ [10] 개심심(61.73) 12.01.16 212 0
298922 c# UI들어간 프로젝트는 라이브러리로 출력할수가 없나요? [2] ㅇㅇㅇㅇ(203.244) 12.01.16 60 0
298921 대기업 경력직으로 면접 본님들 이떵? [2] □ㅁ갤로그로 이동합니다. 12.01.16 153 0
298920 공무원 봉급이랑 연금 대폭 줄여야 할거 같아 [9] □ㅁ갤로그로 이동합니다. 12.01.16 155 0
298919 소켓프로그래밍 질문 좀 [2] 스타퍽스갤로그로 이동합니다. 12.01.16 102 0
298918 출근들 하셧나ㅋ [3] 개심심(61.73) 12.01.16 56 0
298917 횽들 삼각김밥은 세븐일레븐이 짱인줄알았어 [1] 쿠마코갤로그로 이동합니다. 12.01.16 62 0
298916 디씨를 트위터처럼만들자 [4] ㅇㅇ갤로그로 이동합니다. 12.01.16 100 0
298915 실명제 [1] ㅇㅇ갤로그로 이동합니다. 12.01.16 48 0
298912 전역후 그래픽카드 사려는데 질문점요 [3] 유페미아(58.227) 12.01.16 67 0
298910 아래꺼 자세히 [5] 자바만세(121.129) 12.01.16 118 0
298909 그림과 같이 차이점은 없나요?? [2] 자바만세(121.129) 12.01.16 107 0
298908 자바 배우는 기간?? [1] 전방수류탄*갤로그로 이동합니다. 12.01.16 151 0
298906 JSP 입문 6주 째 [1] 휴우(59.26) 12.01.16 99 0
298905 삼섬 소프트웨어 맴버십 강남 면접 후기..... [32] 뉴비 ㅠㅠ(112.151) 12.01.16 620 0
298904 21살 약사vs프로그래머 [7] ㅇㅇ(175.211) 12.01.16 279 1
298901 미친 명령프롬프트가 키자마자 닫히면 어떡해야하냐? [1] ㅊㅍㅊㅌㅍ(121.157) 12.01.16 71 0
298899 RS232로 ESC조종이 가능합니까? [20] 유파최고갤로그로 이동합니다. 12.01.15 135 0
298898 안녕 프갤러들아 주말 잘 지냈니? SODMaster갤로그로 이동합니다. 12.01.15 41 0
298897 MP3 길이 계산하는 코딩인데 실행해보고싶다 ㅠㅠ [6] ㅇㅇㅇㅇ(121.157) 12.01.15 124 0
298896 주식 챠트 같은 것을 만들만한 그래픽 라이브러리를 찾는데. ㅇㅇ [1] ☎v2.0™갤로그로 이동합니다. 12.01.15 96 0
298894 내가 다시 대학생 새내기로 돌아간다면 [15] 영어쓰던남자갤로그로 이동합니다. 12.01.15 263 0
298892 야 SSM 씀 지원해서 삼성전자가면 그냥 일반 신입이랑 대우 다르냐? [3] 루드린갤로그로 이동합니다. 12.01.15 250 0
298890 삼성 소멤(ssm) 13일 면접 후기~(수정) [8] Silvester(58.227) 12.01.15 751 0
298888 애플은 그냥 악세사리인것 같다 [1] 된장(211.197) 12.01.15 42 0
298887 세미나 소식 이런거 어디서 접함?? 피코피코갤로그로 이동합니다. 12.01.15 37 0
298886 질문 ㅎㅎㅎㅎㅎㅎㅎㅎ [31] 하마돈갤로그로 이동합니다. 12.01.15 184 0
298885 질러뒀던 배트맨 아깜빵 하고있는데- ㅋㄱ(183.96) 12.01.15 32 0
298884 아.. 컴퓨터좀 잘하시는분 ㅠㅠ; 이런경우 어떻게 해아하나요... [4] 뿌뿌(121.88) 12.01.15 93 0
298882 야 여기에 SSM(삼성소프트웨어 맴버십) 강남 지부에 지원한사람있냐? [12] 루드린갤로그로 이동합니다. 12.01.15 397 0
298881 나노재능인듯 이쪽에 ㅎㅎㅎㅎㅎㅎㅎ [2] 하마돈갤로그로 이동합니다. 12.01.15 102 0
298880 OS 진행상황하고 책본거랑 아는거 몇개 ㅋㅋ [5] ㅁㄴㅇㄹ(59.30) 12.01.15 189 0
298879 해커스쿨 여기 나같은 찌랭이들은 순식간에 잡전 다 털리고 [2] ㅇㅇ(220.87) 12.01.15 110 0
298878 제 질문에 답해줄 고수 없나여. SODMaster갤로그로 이동합니다. 12.01.15 47 0
298877 ruby나 python html소스 올려놓고 주소 주는 사이트 아는사람? [2] 사이트(218.147) 12.01.15 77 0
298876 질문하나더 [13] 하마돈갤로그로 이동합니다. 12.01.15 113 1
298875 형들 근데 OS로 포트폴리오 만들어가면 주로 면접관이 뭘 볼까영?? [12] ㅁㄴㅇㄹ(59.30) 12.01.15 224 0
298874 자바관련 질문 짧습니다, 짧게 답해주실분;;; [6] 자바만세(121.129) 12.01.15 78 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

디시미디어

디시이슈

1/2