2016-06-21 43 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

您是否在当前屏幕中添加了'布局'视图? –

回答

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

只是要串公共静态和访问它在您的EDITTEXT变化监听器类。把和重新初始化字符串。希望这会帮助你。

相关问题