diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index b01b4b0..1de6c3b 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -16,7 +16,9 @@
-
+
diff --git a/app/src/main/java/com/example/cosmosclient/views/MemberListActivity.java b/app/src/main/java/com/example/cosmosclient/views/MemberListActivity.java
index ad97c66..242c8f4 100644
--- a/app/src/main/java/com/example/cosmosclient/views/MemberListActivity.java
+++ b/app/src/main/java/com/example/cosmosclient/views/MemberListActivity.java
@@ -5,6 +5,7 @@
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.net.Uri;
+import android.os.Handler;
import android.support.design.widget.FloatingActionButton;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
@@ -48,10 +49,18 @@
TextView groupName = findViewById(R.id.groupName);
//メンバー追加ボタン処理
- FloatingActionButton fab = findViewById(R.id.addrequest_button);
+ final FloatingActionButton fab = findViewById(R.id.addrequest_button);
fab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
+ //ボタン連打防止
+ fab.setEnabled(false);
+ new Handler().postDelayed(new Runnable() {
+ public void run() {
+ fab.setEnabled(true);
+ }
+ }, 1000L);
+
startActivity(new Intent(MemberListActivity.this,
AddMemberActivity.class));
finish();
diff --git a/app/src/main/java/com/example/cosmosclient/views/SigninActivity.java b/app/src/main/java/com/example/cosmosclient/views/SigninActivity.java
index 2a70436..b5b78ae 100644
--- a/app/src/main/java/com/example/cosmosclient/views/SigninActivity.java
+++ b/app/src/main/java/com/example/cosmosclient/views/SigninActivity.java
@@ -89,19 +89,25 @@
@Override
public void onResponse(Call call, Response response) {
if (response.isSuccessful()) {
- SigninResponse result = response.body();
+ if(response.body() == null){
+ //パスワードが違う際、アプリが落ちてしまうため
+ Toast.makeText(SigninActivity.this,
+ "パスワードが違います",Toast.LENGTH_LONG).show();
+ }else{
+ SigninResponse result = response.body();
- //app/Cosmosに情報保存
- Cosmos app = (Cosmos)getApplication();
- app.setToken(result.token);
- app.setuId(UserIdText.getText().toString());
+ //app/Cosmosに情報保存
+ Cosmos app = (Cosmos) getApplication();
+ app.setToken(result.token);
+ app.setuId(UserIdText.getText().toString());
- //画面遷移
- Intent intent = new Intent(getApplication(), GroupListActivity.class);
- startActivity(intent);
- Toast.makeText(SigninActivity.this,
- "ログインしました", Toast.LENGTH_SHORT).show();
- finish();
+ //画面遷移
+ Intent intent = new Intent(getApplication(), GroupListActivity.class);
+ startActivity(intent);
+ Toast.makeText(SigninActivity.this,
+ "ログインしました", Toast.LENGTH_SHORT).show();
+ finish();
+ }
}else{
//onFailureでキャッチできないエラーの処理
@@ -113,7 +119,7 @@
//失敗時
@Override
public void onFailure(Call call, Throwable t) {
- //t.printStackTrace();
+ t.printStackTrace();
Toast.makeText(SigninActivity.this,
"ユーザIDもしくはパスワードが間違っています",Toast.LENGTH_SHORT).show();
}
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 5770dcc..f6f3965 100644
--- a/app/src/main/java/com/example/cosmosclient/views/SignupActivity.java
+++ b/app/src/main/java/com/example/cosmosclient/views/SignupActivity.java
@@ -41,6 +41,7 @@
private Button MakeAccountButton;
private ImageView iconChoice;
private String iconImageBase64;
+ private int quality = 70;
@Override
protected void onCreate(Bundle savedInstanceState) {
@@ -185,18 +186,21 @@
//画像をBase64に変換
ByteArrayOutputStream baos = new ByteArrayOutputStream();
Bitmap afterResizeBitmap = Bitmap.createScaledBitmap(image,50,50,true);
- afterResizeBitmap.compress(Bitmap.CompressFormat.JPEG,70, baos);
+ afterResizeBitmap.compress(Bitmap.CompressFormat.JPEG,quality, baos);
byte[] b = baos.toByteArray();
String imageEncoded = Base64.encodeToString(b, Base64.DEFAULT);
- if(imageEncoded.length() <= 2000){
- iconChoice.setImageBitmap(image);
- iconImageBase64 = imageEncoded;
- }else{
- Toast.makeText(SignupActivity.this,
- "この画像は使用できません。\n別の画像を選択してください。",Toast.LENGTH_LONG).show();
+ while (imageEncoded.length() >2000){
+ //文字数の2000文字以下になるまで圧縮率を上げて再度変換
+ baos = new ByteArrayOutputStream();
+ quality -=5;
+ afterResizeBitmap.compress(Bitmap.CompressFormat.JPEG,quality, baos);
+ b = baos.toByteArray();
+ imageEncoded = Base64.encodeToString(b, Base64.DEFAULT);
}
+ iconChoice.setImageBitmap(image);
+ iconImageBase64 = imageEncoded;
}catch(IOException e){
e.printStackTrace();
}
diff --git a/app/src/main/res/layout/activity_signup.xml b/app/src/main/res/layout/activity_signup.xml
index c0b617e..ea37005 100644
--- a/app/src/main/res/layout/activity_signup.xml
+++ b/app/src/main/res/layout/activity_signup.xml
@@ -44,7 +44,7 @@
android:layout_height="1dp"
android:layout_marginStart="8dp"
android:layout_marginLeft="50dp"
- android:layout_marginTop="32dp"
+ android:layout_marginTop="24dp"
android:layout_marginEnd="8dp"
android:layout_marginRight="50dp"
android:background="@android:color/darker_gray"
@@ -59,7 +59,7 @@
android:layout_height="28dp"
android:layout_marginStart="8dp"
android:layout_marginLeft="8dp"
- android:layout_marginTop="18dp"
+ android:layout_marginTop="8dp"
android:layout_marginEnd="8dp"
android:layout_marginRight="8dp"
android:background="#FFFFFF"
@@ -77,15 +77,15 @@
android:layout_height="66dp"
android:layout_marginStart="8dp"
android:layout_marginLeft="8dp"
- android:layout_marginTop="16dp"
+ android:layout_marginTop="8dp"
android:layout_marginEnd="8dp"
android:layout_marginRight="8dp"
- android:textAllCaps="false"
android:text="@string/make_account"
+ android:textAllCaps="false"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.445"
app:layout_constraintStart_toStartOf="parent"
- app:layout_constraintTop_toBottomOf="@+id/ConfirmPasswordText" />
+ app:layout_constraintTop_toBottomOf="@+id/choiceImage" />
+
+
\ No newline at end of file