diff --git a/.idea/misc.xml b/.idea/misc.xml
index 87dc5c1..7ad4240 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -9,49 +9,42 @@
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
-
-
+
+
+
-
+
+
diff --git a/app/src/main/java/com/example/nemophila/MyPageEditorActivity.java b/app/src/main/java/com/example/nemophila/MyPageEditorActivity.java
index 4ff7896..a92b444 100644
--- a/app/src/main/java/com/example/nemophila/MyPageEditorActivity.java
+++ b/app/src/main/java/com/example/nemophila/MyPageEditorActivity.java
@@ -1,24 +1,46 @@
package com.example.nemophila;
+import androidx.activity.result.ActivityResultCallback;
+import androidx.activity.result.ActivityResultLauncher;
+import androidx.activity.result.contract.ActivityResultContracts;
import androidx.appcompat.app.AppCompatActivity;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
import android.content.Intent;
+import android.net.Uri;
import android.os.Bundle;
import android.view.Gravity;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageButton;
+import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
import com.example.nemophila.entities.Account;
import com.example.nemophila.viewmodels.AccountViewModel;
+import java.util.Base64;
+import java.util.List;
+
public class MyPageEditorActivity extends AppCompatActivity {
+ private String icon;
//マイページ編集画面の作成
+
+ private ActivityResultLauncher launcher = registerForActivityResult(new ActivityResultContracts.OpenDocument(), new ActivityResultCallback() {
+ @Override
+ public void onActivityResult(Uri uri) {
+
+ if(uri == null)return;
+ icon = new String(Base64.getEncoder().encode(uri.toString().getBytes()));
+ ImageButton changeIconButton = (ImageButton)findViewById(R.id.changeIconButton);
+ changeIconButton.setImageURI(uri);
+ }
+
+ });
+
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
@@ -49,6 +71,15 @@
}
});
+ accountViewModel.getNameLiveData().observe(this, new Observer() {
+ @Override
+ public void onChanged(String name) {
+ TextView myName = (TextView) findViewById(R.id.editName);
+ myName.setText(name);
+ nemophila.setName(name);
+ }
+
+ });
//LiveDataへの購読
accountViewModel.getPwLiveData().observe(this, new Observer() {
@Override
@@ -68,6 +99,12 @@
}
});
+ ImageButton changeIconButton = (ImageButton)findViewById(R.id.changeIconButton);
+ changeIconButton.setOnClickListener(new View.OnClickListener(){
+ public void onClick(View v) {
+ launcher.launch(new String[] {"image/*"});
+ }
+ });
//変更確定ボタンを押した場合の動き
Button changeNameButton = (Button) findViewById(R.id.changeConfirm);
@@ -91,6 +128,10 @@
if(oldPw!=null && newPw!=null) {
accountViewModel.changePw(uid, oldPw, newPw, token);
}
+ if(icon!=null){
+ accountViewModel.changeIcon(uid, icon, token);
+ }
+
}
});
@@ -101,7 +142,7 @@
String uid = nemophila.getUid();
String token = nemophila.getToken();
accountViewModel.deleteAccount(uid,token);
- Intent intent = new Intent(MyPageEditorActivity.this, LoginActivity.class);
+ Intent intent = new Intent(MyPageEditorActivity.this, SignUpActivity.class);
startActivity(intent);
}
});
diff --git a/app/src/main/java/com/example/nemophila/PostActivity.java b/app/src/main/java/com/example/nemophila/PostActivity.java
index 69db41e..e0c670c 100644
--- a/app/src/main/java/com/example/nemophila/PostActivity.java
+++ b/app/src/main/java/com/example/nemophila/PostActivity.java
@@ -65,18 +65,6 @@
System.out.println(uriLists.get(0));
-// for (int i = 0; i
+ app:layout_constraintVertical_bias="0.833" />
+ app:layout_constraintVertical_bias="0.622" />
+ app:layout_constraintVertical_bias="0.0" />
+ app:layout_constraintVertical_bias="0.154" />
+ app:layout_constraintVertical_bias="0.149" />
+
+
+
+
\ No newline at end of file