2016-06-21 4 views
0

Как можно получить EditText из класса? Я не могу получить строку от EditText.getText().toString(). Он равен нулю.Как получить EditText из класса?

public class SignUpModel { 
    String email; 
    Context context; 

    public SignUpModel(Context context) { 
     this.context = context; 
    } 

    public String getEmail() { 
     LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
     View layout=inflater.inflate(R.layout.activity_sign_up, null); 
     EditText signup_email =(EditText) layout.findViewById(R.id.signup_email); 
     email = signup_email.getText().toString(); 
     Log.v("email",signup_email.getText().toString()); 
     return email; 
    } 

} 
+0

Вы добавили 'layout' View в текущий экран? –

ответ

0

Просто создайте свою глобальную переменную EditText, а затем получите ее. Но, прежде чем использовать его, отметьте null.

public class SignUpModel { 
    String email; 
    Context context; 
    private EditText signup_email; 

    public SignUpModel(Context context) { 
     this.context = context; 
    } 

    public String getEmail() { 
     LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
     View layout=inflater.inflate(R.layout.activity_sign_up, null); 
     signup_email =(EditText) layout.findViewById(R.id.signup_email); 
     email = signup_email.getText().toString(); 
     Log.v("email",signup_email.getText().toString()); 
     return email; 
    } 
    public EditText getEmailEditText() { 
     return signup_email; 
    } 

} 
+0

Является ли public void getEmailEditText() {return signup_email;} return void? – nocmmnt

+0

извините, см. Мои измененные – NamNH

+0

К сожалению, это не работает – nocmmnt

0

Просто сделайте струнный общественный статический и получить доступ к нему в вашем классе .Put на слушателе изменений EditText и реинициализировать строку .HOpe это поможет вам.

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