2012-03-01 5 views
0

Ihave используется пользовательский диалог и EditText в нем, и я проверить EditText, отображая сообщение об ошибке, когда пользователь нажимает ОК кнопку без ввода его/здесь имя, но когда я запускаю его и нажмите кнопка ok с или без ввода имени исключение Происходит почему? пожалуйста, помогите мне ..пользовательский диалог исключение

это мой код

final Dialog nameDialog =new Dialog(ProfileView.this); 
      nameDialog.setContentView(R.layout.namedialog); 
      nameDialog.setTitle("please enter your name"); 
      name =(EditText)nameDialog.findViewById(R.id.nameETDialog); 
      Button okButton = (Button) nameDialog.findViewById(R.id.ok); 

      okButton.setOnClickListener(new View.OnClickListener() { 
       @Override 
       public void onClick(View v) { 
        //validate the name 
        if(name.getText().toString()== null)  
         name.setError(" your name is requiered"); 


        else 
        { 
         EditText nametext=(EditText)findViewById(R.id.name_text); 
         nametext.setText(name.getText().toString()); 
         Toast.makeText(getBaseContext(),"your name has been entered ", Toast.LENGTH_SHORT).show(); 
       } 
        } 

    }); 
      Button cancelButton = (Button) nameDialog.findViewById(R.id.cancel); 
      cancelButton.setOnClickListener(new View.OnClickListener() { 
       @Override 
       public void onClick(View v) { 
        nameDialog.dismiss(); 
       } 


      }); 

      nameDialog.show(); 


} 
    }); 

} 

}

+2

отправить свой LOGCAT пожалуйста – Natali

+1

Logcat находится в eclipse по адресу: Window -> Show View -> Logcat – Bigflow

ответ

0

Глядя на код, без LogCat, я думаю, вы должны изменить:

name =(EditText)nameDialog.findViewById(R.id.nameETDialog); 
Button okButton = (Button) nameDialog.findViewById(R.id.ok); 

С

name =(EditText) findViewById(R.id.nameETDialog); 
Button okButton = (Button) findViewById(R.id.ok); 

Я предполагаю, что кнопка okButton находится в макете под названием: namedialog

Смежные вопросы