diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 4f19a48..3daace8 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -3,7 +3,6 @@
xmlns:tools="http://schemas.android.com/tools"
package="com.example.cosmosclient">
- android:hardwareAccelerated="true"
diff --git a/app/src/main/java/com/example/cosmosclient/views/SignupActivity.java b/app/src/main/java/com/example/cosmosclient/views/SignupActivity.java
index b1dff9b..5cd5c53 100644
--- a/app/src/main/java/com/example/cosmosclient/views/SignupActivity.java
+++ b/app/src/main/java/com/example/cosmosclient/views/SignupActivity.java
@@ -3,6 +3,8 @@
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
+import android.text.Editable;
+import android.text.TextWatcher;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
@@ -19,8 +21,12 @@
import retrofit2.Retrofit;
import retrofit2.converter.jackson.JacksonConverterFactory;
-public class SignupActivity extends AppCompatActivity {
+public class SignupActivity extends AppCompatActivity{
// public static final String UserInfomation="com.example.cosmosclient.views";
+ private boolean nameEnable;
+ private boolean pwEnable;
+ private boolean cpwEnable;
+ private Button MakeAccountButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
@@ -38,22 +44,31 @@
//各種idを取得
Button LoginButton = findViewById(R.id.LoginButton);
- Button MakeAccountButton = findViewById(R.id.MakeAccountButton);
+ MakeAccountButton = findViewById(R.id.MakeAccountButton);
final EditText NameText = findViewById(R.id.NameText);
final EditText PasswordText = findViewById(R.id.PasswordText);
final EditText ConfirmPasswordText = findViewById(R.id.ConfirmPasswordText);
+ //入力欄監視
+ NameText.addTextChangedListener(new GenericTextWatcher(NameText));
+ PasswordText.addTextChangedListener(new GenericTextWatcher(PasswordText));
+ ConfirmPasswordText.addTextChangedListener(new GenericTextWatcher(ConfirmPasswordText));
+ //MakeAccountButton.setEnabled(false);
//Make Accountボタンの処理
MakeAccountButton.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
+ String pw = PasswordText.getText().toString();
+ String confirmPw = ConfirmPasswordText.getText().toString();
+
//パスワードと確認パスワードが一致していない際の処理
-// if(PasswordText.getText().toString().equals(ConfirmPasswordText.getText().toString()) == false){
-// Toast.makeText(SignupActivity.this,"入力されたパスワードが一致しません。",Toast.LENGTH_SHORT);
-// return;
-// }
+ if(!pw.equals(confirmPw)){
+ PasswordText.setError("入力されたパスワードが一致しません");
+ ConfirmPasswordText.setError("入力されたパスワードが一致しません");
+ return;
+ }
//API呼び出しのための値入力
Call call = signup.listUser(NameText.getText().toString(), PasswordText.getText().toString(),"https://yumenavi.info/live/2018/photo/k/s015980019.jpg");
@@ -80,6 +95,7 @@
finish();
}else{
+ //onFailureでキャッチできないエラー用
Toast.makeText(SignupActivity.this,
"アカウント作成失敗",Toast.LENGTH_SHORT);
}
@@ -105,6 +121,52 @@
finish();
}
});
-
}
+
+ //入力欄監視処理内容
+ private class GenericTextWatcher implements TextWatcher{
+ private View view;
+
+ private GenericTextWatcher(View view){
+ this.view = view;
+ }
+
+ @Override
+ public void beforeTextChanged(CharSequence s, int start, int count,int after){/*記述不要*/};
+ @Override
+ public void onTextChanged(CharSequence s, int start, int before, int count){/*記述不要*/};
+ @Override
+ public void afterTextChanged(Editable s){
+ switch(view.getId()) {
+ case R.id.NameText:
+ if (s.length() > 0) {
+ nameEnable = true;
+ } else {
+ nameEnable = false;
+ }
+ break;
+ case R.id.PasswordText:
+ if(s.length()>5){
+ pwEnable=true;
+ }else{
+ pwEnable=false;
+ }
+ break;
+ case R.id.ConfirmPasswordText:
+ if(s.length()>5){
+ cpwEnable=true;
+ }else{
+ cpwEnable=false;
+ }
+ break;
+ }
+ //ボタン有効&無効
+ if(nameEnable && pwEnable && cpwEnable){
+ MakeAccountButton.setEnabled(true);
+ }else{
+ MakeAccountButton.setEnabled(false);
+ }
+ }
+ }
+
}