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

커스텀 다이얼로그 질문이요 ㅠㅠ [closed]

0 추천

A 클레스 B 클레스가 있고 A 클레스에서 버튼을 눌러 커스텀 다이얼로그를 불러옵니다.

 

커스텀 다이얼로그에는 EDITTEXT 와 버튼이  있고 EDITTEXT 에 문자를 입력 후 버튼을 누르면

 

문자와 함께 B클레스로 INTENT 넘기려고합니다. 

-------------------------------------------------------------------------------------------------

A클레스 ----

nomember.setOnClickListener(new OnClickListener() {
 
@Override
public void onClick(View v) {
nickDialog.show();
}
});
 
------------------
 
--------커스텀 다이얼로그 ---------
 
public class NicknameDialog extends Dialog implements OnClickListener{
 
private EditText DialogNick;
private ImageButton nickok , nickno;
private String _Nickname;
 
public NicknameDialog(Context context) {
super(context);
setContentView(R.layout.dialog_nick);
DialogNick = (EditText) findViewById(R.id.DialogNick);
nickok = (ImageButton) findViewById(R.id.nickok);
nickno = (ImageButton) findViewById(R.id.nickno);
nickok.setOnClickListener(this);
nickno.setOnClickListener(this);
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
if (v==nickok){
_Nickname = DialogNick.getText().toString();
StaticObj.Mynickname= _Nickname;
//intent = new Intent(con, TabSearch.class);
}else if (v==nickno){
 
}
}
}
 

dismiss 를 ok 버튼에 두고 A클레스에서 dismiss 를 받아 intent 처리하니 ok 버튼은 잘 되는데 

nickno 라는 버튼에 cancel 을 두고 a클레스에서 cancel 을 받으니 dismiss 를 처리후 cancel 하는거더라구요

그래서 nickno 버튼을 눌러도 intent 가 되더라구여 .. 백버튼 눌르거나 다른데 눌러도 마찬가지로 인텐트가 되구요

이 부분을 어떻게 처리해줘야 하는지 모르겠습니다. dismiss 와 cancel 말고 어떻게 처리해줘야 하죠...

안드로이드 초보입니다. ㅠㅠ 고수님들 알려주세요 

질문을 종료한 이유: 해결
숀화이트 (3,370 포인트) 님이 2014년 3월 24일 질문
숀화이트님이 2014년 3월 24일 closed

1개의 답변

+1 추천

버튼 이벤트를 위와 같이 사용하시려면  v.getid() 를 쓰셔야해요.

if ( v.getid() == R.id.nickok ){

        _Nickname = DialogNick.getText().toString();

        StaticObj.Mynickname= _Nickname;
        //intent = new Intent(con, TabSearch.class);
}
else if ( v.getid() == R.id.nickno){
초보개발자ㅠ (33,870 포인트) 님이 2014년 3월 24일 답변
그냥 인플레이트한 메소드를 사용하면되는거였는데 뻘짓했네염...
답변 감사합니다.
...