diff --git a/app/src/main/java/org/ntlab/acanthus_client/views/Login/LoginScreenActivity.java b/app/src/main/java/org/ntlab/acanthus_client/views/Login/LoginScreenActivity.java index 6154b1d..a13a392 100644 --- a/app/src/main/java/org/ntlab/acanthus_client/views/Login/LoginScreenActivity.java +++ b/app/src/main/java/org/ntlab/acanthus_client/views/Login/LoginScreenActivity.java @@ -4,11 +4,13 @@ import android.content.Intent; import android.os.Bundle; +import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.TextView; import org.ntlab.acanthus_client.R; +import org.ntlab.acanthus_client.databinding.ActivityLoginScreenBinding; import org.ntlab.acanthus_client.entities.AccountTokenJson; import org.ntlab.acanthus_client.resources.accounts.AccountsRest; import org.ntlab.acanthus_client.views.MainActivity; @@ -28,92 +30,55 @@ public class LoginScreenActivity extends AppCompatActivity { //----------------------------------------------------------------- - // 各Viewの列挙型 - public enum EditTexts { - emailForm(0), passwordForm(1), loginButton(2), redoSignUpButton(3); - - private int textId; - - //----------------------------------------------------------------- - private EditTexts(int textId) { - this.textId = textId; - } - - //----------------------------------------------------------------- - // getter - public int getTextId() { - return this.textId; - } - } - - //----------------------------------------------------------------- - private ArrayList views = new ArrayList<>(); + ActivityLoginScreenBinding binding; //----------------------------------------------------------------- // @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - setContentView(R.layout.activity_login_screen); - initView(); + init(); + } + //----------------------------------------------------------------- + // ログインボタン押下時の処理 + public void onClickLogin(View view) { Retrofit retrofit = new Retrofit.Builder() .baseUrl("http://nitta-lab-www.is.konan-u.ac.jp/acanthus/") .addConverterFactory(JacksonConverterFactory.create()) .build(); final AccountsRest accountsRest = retrofit.create(AccountsRest.class); - onClickLogin(accountsRest); - onClickSignUp(); + String emailAddress = binding.editTextTextLoginEmail.getText().toString(); + String password = binding.editTextTextLoginPassword.getText().toString(); - } + // ログイン + Call call = accountsRest.issueLoginToken(emailAddress, password); + call.enqueue(new Callback() { + @Override + public void onResponse(Call call, Response response) { + if (response.isSuccessful()) succeedLogin(); + } - //----------------------------------------------------------------- - // ログインボタン押下時の処理 - private void onClickLogin(AccountsRest accountsRest) { - Button loginButton = (Button) views.get(EditTexts.loginButton.getTextId()); - - loginButton.setOnClickListener(v -> { - String emailAddress = views.get(EditTexts.emailForm.getTextId()).getText().toString(); - String password = views.get(EditTexts.passwordForm.getTextId()).getText().toString(); - - // ログイン - Call call = accountsRest.issueLoginToken(emailAddress, password); - call.enqueue(new Callback() { - @Override - public void onResponse(Call call, Response response) { - if (response.isSuccessful()) succeedLogin(); - else loginButton.setText("Faild"); - } - - @Override - public void onFailure(Call call, Throwable t) { - loginButton.setText("failure"); - } - }); + @Override + public void onFailure(Call call, Throwable t) { + } }); } //----------------------------------------------------------------- - // サインアップ画面に遷移 - private void onClickSignUp() { - Button signUpButton = (Button) views.get(EditTexts.redoSignUpButton.getTextId()); - - signUpButton.setOnClickListener(v -> { - transitionActivity(new SignUpActivity()); - }); + // サインアップを押下 + public void onClickSignUp(View view) { + transitionActivity(new SignUpActivity()); } //----------------------------------------------------------------- //----------------------------------------------------------------- // - private void initView() { - views.add(findViewById(R.id.editTextTextLoginEmail)); - views.add(findViewById(R.id.editTextTextLoginPassword)); - views.add(findViewById(R.id.buttonLoginLogin)); - views.add(findViewById(R.id.buttonRedoSignUp)); + private void init() { + setContentView(R.layout.activity_login_screen); + binding = ActivityLoginScreenBinding.inflate(getLayoutInflater()); } - //----------------------------------------------------------------- // ログイン成功時の処理 private void succeedLogin() {