これが簡単に修正されることを願っています。ここで何が欠けているのかわかりません。これはログイン フォームで、以前のログイン メールを共有設定で記憶しています。editText ボックスには、onCreate で電子メールが事前入力されていますが、onClick は editText フィールドが空であると認識しています。何か案は?
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);
setContentView(R.layout.main);
email = (EditText) findViewById(R.id.login_email_address);
pass = (EditText) findViewById(R.id.password);
login = (Button) findViewById(R.id.blogin);
text = (TextView) findViewById(R.id.invalid_email);
// register listeners
newuser.setOnClickListener(this);
login.setOnClickListener(this);
app_preferences = PreferenceManager.getDefaultSharedPreferences(this);
String restoredemail = app_preferences.getString("username", null);
if (restoredemail != null) {
email.setText(restoredemail);
email.addTextChangedListener(new TextWatcher() {
public void afterTextChanged(Editable s) {
if (email.getText().toString()
.matches("[a-zA-Z0-9._-]+@[a-z]+\\.+[a-z]+")
&& s.length() > 0) {
text.setText("valid email");
valid_email = true;
//user_email = email.toString();
} else {
text.setText("invalid email");
}
}
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
}
public void onTextChanged(CharSequence s, int start, int before,
int count) {
}
});
}
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
switch (v.getId()) {
case R.id.blogin:
if (valid_email == true) {
new AttemptLogin().execute();
}else{