마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

전역변수 지정하면 그 값을 읽지 못하는거 같습니다...도와주세요 ㅠㅠ

0 추천
int qqq;	//전역변수
    public int aaaa(){
        //라디오버튼
    	RadioGroup rg=(RadioGroup)findViewById(R.id.h_radio);	//라디오 그룹을 읽어옴
        rg.setOnCheckedChangeListener(new OnCheckedChangeListener() {
        	@Override
        	public void onCheckedChanged(RadioGroup group, int checkedId) {
        		// TODO Auto-generated method stub
        		switch (checkedId){
        		case R.id.h_radio1:	
        			qqq=1;
        			break;
        		case R.id.h_radio2:	
        			qqq=2;
                                break;
        		}
        	}
        });
        return qqq;
    }

Button buttonHSok = (Button) hardStudy.findViewById(R.id.h_add);	
       buttonHSok.setOnClickListener(new OnClickListener() {	
            
        	 
        	
                public void onClick(View v) {
                	if(qqq==1){
                		Toast.makeText(Main.this, "111", Toast.LENGTH_SHORT).show();	
                	}
                	else if(qqq==2){
                		Toast.makeText(Main.this, "222", Toast.LENGTH_SHORT).show();
                	}
                	
                   
                }
        });

책보고 하나하나씩 하고 있는 입문 단계입니다...ㅠㅠ

 

>>여기에서 aaaa() 에서 조건에 따라 전역변수 qqq값을 바꿔지면

qqq=1이라고 한다면

버튼 실행에서 바꾼 qqq값으로 Toast가 "111" 을 출력할거라 기대 했는데

111도 아니고 222도 아니고 값이 없다고 생각하네요.....도와주세요 ㅠㅠ

 

익명사용자 님이 2014년 6월 5일 질문
2014년 6월 5일 reopened

2개의 답변

0 추천
 
채택된 답변
일단 올리신 코드가 문법에서부터 오류인데;;;;;;;;;

실행되기나 하는건가요 저거?

 

자바에서는 전역변수라는 개념은 없지만 static 변수가 그나마 전역변수라는 이름에 가장 가깝구요.

클래스 선언부도 없는데... 저 int qqq는 지금 어떤 클래스의 멤버 변수겠군요.

어쨌건 지금 int qqq하고 Button buttonhSok하고 같은 범위내에 있는데;;;;;;;;;;;;;;;

 

아무튼 이게 뭐죠?????????

로그를 찍어서 함수가 제대로 호출이나 되는지 먼저 보세요.
Jinthree (8,980 포인트) 님이 2014년 6월 5일 답변
0 추천
저...public int aaaa()는 뭔가요;;;

저 함수 호출은 하나요~?
YeonMin (17,860 포인트) 님이 2014년 6월 5일 답변
YeonMin님이 2014년 6월 5일 수정
...