diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 78c8159..160c466 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -32,6 +32,7 @@
+
uidList = new ArrayList<>();
+ private ArrayList followsUid = new ArrayList<>();
- public Collection getUidList() {
- return uidList;
+ public Collection getFollowsUid() {
+ return followsUid;
}
- public void setUidList(Collection uidList) {
- this.uidList = uidList;
+ public void setFollowsUid(ArrayList followsUid) {
+ this.followsUid = followsUid;
}
}
diff --git a/app/src/main/java/org/ntlab/acanthus_client/entities/FollowerUidJson.java b/app/src/main/java/org/ntlab/acanthus_client/entities/FollowerUidJson.java
index 3498d99..6893048 100644
--- a/app/src/main/java/org/ntlab/acanthus_client/entities/FollowerUidJson.java
+++ b/app/src/main/java/org/ntlab/acanthus_client/entities/FollowerUidJson.java
@@ -4,13 +4,14 @@
import java.util.Collection;
public class FollowerUidJson {
- private Collection uidList = new ArrayList<>();
+ private ArrayList followersUid = new ArrayList<>();
- public Collection getUidList() {
- return uidList;
+ public Collection getFollowersUid() {
+ return followersUid;
}
- public void setUidList(Collection uidList) {
- this.uidList = uidList;
+ public void setFollowersUid(ArrayList followersUid) {
+ this.followersUid = followersUid;
}
+
}
diff --git a/app/src/main/java/org/ntlab/acanthus_client/views/userpage/UserPageActivity.java b/app/src/main/java/org/ntlab/acanthus_client/views/userpage/UserPageActivity.java
index f805a0a..85b07e6 100644
--- a/app/src/main/java/org/ntlab/acanthus_client/views/userpage/UserPageActivity.java
+++ b/app/src/main/java/org/ntlab/acanthus_client/views/userpage/UserPageActivity.java
@@ -1,16 +1,22 @@
package org.ntlab.acanthus_client.views.userpage;
+import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
+import org.jetbrains.annotations.Nullable;
import org.ntlab.acanthus_client.Acanthus;
import org.ntlab.acanthus_client.R;
+import org.ntlab.acanthus_client.entities.FollowUidJson;
+import org.ntlab.acanthus_client.views.userpage.followList.FollowListActivity;
+import org.ntlab.acanthus_client.views.userpage.followerList.FollowerListActivity;
+import org.ntlab.acanthus_client.views.userpage.workList.WorkListActivity;
+
import androidx.appcompat.app.AppCompatActivity;
-import androidx.fragment.app.FragmentManager;
-import androidx.fragment.app.FragmentTransaction;
+import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
public class UserPageActivity extends AppCompatActivity {
@@ -25,6 +31,8 @@
userPageViewModel = new ViewModelProvider(this).get(UserPageViewModel.class);
acanthus = (Acanthus) getApplication();
+ Integer uid = 1;
+ String token = "abc0";
TextView userNameText = findViewById(R.id.userNameText);
// userNameText.setText();
@@ -43,6 +51,15 @@
Button followUserButton = findViewById(R.id.followUserButton);
//ログインしているユーザーがフォローしているかの有無で画面表示時のボタンの文字を変更する
+ userPageViewModel.getFollows(uid);
+ userPageViewModel.getFollowUidJson().observe(this, new Observer() {
+ @Override
+ public void onChanged(@Nullable FollowUidJson followUidJson) {
+
+
+ }
+ });
+
// if () {
// followUserButton.setText("フォロー解除");
// }else{
@@ -54,10 +71,10 @@
@Override
public void onClick(View v) {
// if () {
-// //userPageViewModel.addFollow();
+// userPageViewModel.addFollow(uid, token, 2);
// followUserButton.setText("フォロー解除");
// }else{
-// //userPageViewModel.releaseFollow();
+// userPageViewModel.releaseFollow(uid, token, 2);
// followUserButton.setText("フォローする");
// }
}
@@ -68,10 +85,8 @@
followListButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- FragmentManager fragmentManager = getSupportFragmentManager();
- FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
-// fragmentTransaction.replace(R.id.container, new );
- fragmentTransaction.commit();
+ Intent intent = new Intent(getApplication(), FollowListActivity.class);
+ startActivity(intent);
}
});
@@ -80,10 +95,8 @@
followerListButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- FragmentManager fragmentManager = getSupportFragmentManager();
- FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
-// fragmentTransaction.replace(R.id.container, new );
- fragmentTransaction.commit();
+ Intent intent = new Intent(getApplication(), FollowerListActivity.class);
+ startActivity(intent);
}
});
@@ -92,10 +105,8 @@
workListButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- FragmentManager fragmentManager = getSupportFragmentManager();
- FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
-// fragmentTransaction.replace(R.id.container, new );
- fragmentTransaction.commit();
+ Intent intent = new Intent(getApplication(), WorkListActivity.class);
+ startActivity(intent);
}
});
diff --git a/app/src/main/java/org/ntlab/acanthus_client/views/userpage/UserPageViewModel.java b/app/src/main/java/org/ntlab/acanthus_client/views/userpage/UserPageViewModel.java
index d5f9261..c4db76d 100644
--- a/app/src/main/java/org/ntlab/acanthus_client/views/userpage/UserPageViewModel.java
+++ b/app/src/main/java/org/ntlab/acanthus_client/views/userpage/UserPageViewModel.java
@@ -1,12 +1,15 @@
package org.ntlab.acanthus_client.views.userpage;
+import android.util.Log;
+
import org.ntlab.acanthus_client.entities.FollowAddJson;
import org.ntlab.acanthus_client.entities.FollowUidJson;
+import org.ntlab.acanthus_client.entities.FollowerUidJson;
+import org.ntlab.acanthus_client.resources.accounts.FollowersRest;
import org.ntlab.acanthus_client.resources.accounts.FollowsRest;
-import java.util.ArrayList;
-import java.util.Collection;
-
+import androidx.lifecycle.LiveData;
+import androidx.lifecycle.MutableLiveData;
import androidx.lifecycle.ViewModel;
import retrofit2.Call;
import retrofit2.Callback;
@@ -16,14 +19,20 @@
public class UserPageViewModel extends ViewModel {
- private Collection followUidList;
+ private MutableLiveData followUidJsonMutableLiveData;
+ private MutableLiveData followerUidJsonMutableLiveData;
public UserPageViewModel(){
- this.followUidList = new ArrayList<>();
+ this.followUidJsonMutableLiveData = new MutableLiveData<>();
+ this.followerUidJsonMutableLiveData = new MutableLiveData<>();
}
- public Collection getFollowUidList(){
- return this.followUidList;
+ public LiveData getFollowUidJson(){
+ return this.followUidJsonMutableLiveData;
+ }
+
+ public LiveData getFollowerUidJson() {
+ return this.followerUidJsonMutableLiveData;
}
//ユーザーのフォローリストを取得する
@@ -41,14 +50,14 @@
public void onResponse(Call call, Response response) {
if (response.isSuccessful()) {
if (response.body() != null) {
- followUidList = response.body().getUidList();
+ followUidJsonMutableLiveData.setValue(response.body());
}
}
}
@Override
public void onFailure(Call call, Throwable t) {
-
+ Log.d("tag", "onFailure: ");
}
});
@@ -91,19 +100,43 @@
final FollowsRest followsRest = retrofit.create(FollowsRest.class);
//フォローの解除
- Call call = followsRest.releaseFollows(uid, token, followUid);
- call.enqueue(new Callback() {
+ Call call = followsRest.releaseFollows(uid, token, followUid);
+ call.enqueue(new Callback() {
@Override
- public void onResponse(Call call, Response response) {
+ public void onResponse(Call call, Response response) {
+
+ }
+
+ @Override
+ public void onFailure(Call call, Throwable t) {
+
+ }
+ });
+
+ }
+
+ //ユーザーのフォロワーリストを取得する
+ public void getFollowers(Integer uid){
+ Retrofit retrofit = new Retrofit.Builder()
+ .baseUrl("http://nitta-lab-www.is.konan-u.ac.jp/acanthus/")
+ .addConverterFactory(JacksonConverterFactory.create())
+ .build();
+ final FollowersRest followersRest = retrofit.create(FollowersRest.class);
+
+ //フォロワーリストの取得
+ Call call = followersRest.getFollowers(uid);
+ call.enqueue(new Callback() {
+ @Override
+ public void onResponse(Call call, Response response) {
if (response.isSuccessful()) {
if (response.body() != null) {
-
+ followerUidJsonMutableLiveData.setValue(response.body());
}
}
}
@Override
- public void onFailure(Call call, Throwable t) {
+ public void onFailure(Call call, Throwable t) {
}
});
diff --git a/app/src/main/java/org/ntlab/acanthus_client/views/userpage/followList/FollowListActivity.java b/app/src/main/java/org/ntlab/acanthus_client/views/userpage/followList/FollowListActivity.java
new file mode 100644
index 0000000..b271941
--- /dev/null
+++ b/app/src/main/java/org/ntlab/acanthus_client/views/userpage/followList/FollowListActivity.java
@@ -0,0 +1,38 @@
+package org.ntlab.acanthus_client.views.userpage.followList;
+
+import android.os.Bundle;
+import android.view.View;
+import android.widget.Button;
+
+import org.ntlab.acanthus_client.R;
+import org.ntlab.acanthus_client.views.userpage.UserPageViewModel;
+
+import androidx.appcompat.app.AppCompatActivity;
+import androidx.lifecycle.ViewModelProvider;
+
+public class FollowListActivity extends AppCompatActivity {
+
+ private UserPageViewModel userPageViewModel;
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_follow_list);
+
+ userPageViewModel = new ViewModelProvider(this).get(UserPageViewModel.class);
+
+ Button returnButton = findViewById(R.id.returnFollowButton);
+
+ //前の画面に戻る処理
+ returnButton.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ finish();
+ }
+ });
+
+
+
+ }
+
+}
diff --git a/app/src/main/java/org/ntlab/acanthus_client/views/userpage/followList/FollowListFragment.java b/app/src/main/java/org/ntlab/acanthus_client/views/userpage/followList/FollowListFragment.java
deleted file mode 100644
index 94e725e..0000000
--- a/app/src/main/java/org/ntlab/acanthus_client/views/userpage/followList/FollowListFragment.java
+++ /dev/null
@@ -1,7 +0,0 @@
-package org.ntlab.acanthus_client.views.userpage.followList;
-
-public class FollowListFragment {
-
-
-
-}
diff --git a/app/src/main/java/org/ntlab/acanthus_client/views/userpage/followerList/FollowerListActivity.java b/app/src/main/java/org/ntlab/acanthus_client/views/userpage/followerList/FollowerListActivity.java
new file mode 100644
index 0000000..1627710
--- /dev/null
+++ b/app/src/main/java/org/ntlab/acanthus_client/views/userpage/followerList/FollowerListActivity.java
@@ -0,0 +1,39 @@
+package org.ntlab.acanthus_client.views.userpage.followerList;
+
+import android.os.Bundle;
+import android.view.View;
+import android.widget.Button;
+
+import org.ntlab.acanthus_client.R;
+import org.ntlab.acanthus_client.views.userpage.UserPageViewModel;
+
+import androidx.appcompat.app.AppCompatActivity;
+import androidx.lifecycle.ViewModelProvider;
+
+
+public class FollowerListActivity extends AppCompatActivity {
+
+ private UserPageViewModel userPageViewModel;
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_follower_list);
+
+ userPageViewModel = new ViewModelProvider(this).get(UserPageViewModel.class);
+
+ Button returnButton = findViewById(R.id.returnFollowerButton);
+
+ //前の画面に戻る処理
+ returnButton.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ finish();
+ }
+ });
+
+
+
+ }
+
+}
diff --git a/app/src/main/java/org/ntlab/acanthus_client/views/userpage/followerList/FollowerListFragment.java b/app/src/main/java/org/ntlab/acanthus_client/views/userpage/followerList/FollowerListFragment.java
deleted file mode 100644
index 15536c1..0000000
--- a/app/src/main/java/org/ntlab/acanthus_client/views/userpage/followerList/FollowerListFragment.java
+++ /dev/null
@@ -1,7 +0,0 @@
-package org.ntlab.acanthus_client.views.userpage.followerList;
-
-public class FollowerListFragment {
-
-
-
-}
diff --git a/app/src/main/java/org/ntlab/acanthus_client/views/userpage/workList/WorkListActivity.java b/app/src/main/java/org/ntlab/acanthus_client/views/userpage/workList/WorkListActivity.java
new file mode 100644
index 0000000..9a543e7
--- /dev/null
+++ b/app/src/main/java/org/ntlab/acanthus_client/views/userpage/workList/WorkListActivity.java
@@ -0,0 +1,35 @@
+package org.ntlab.acanthus_client.views.userpage.workList;
+
+import android.os.Bundle;
+import android.view.View;
+import android.widget.Button;
+
+import org.ntlab.acanthus_client.R;
+import org.ntlab.acanthus_client.views.userpage.UserPageViewModel;
+
+import androidx.appcompat.app.AppCompatActivity;
+
+public class WorkListActivity extends AppCompatActivity {
+
+ private UserPageViewModel userPageViewModel;
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_work_list);
+
+ Button returnButton = findViewById(R.id.returnWorkButton);
+
+ //前の画面に戻る処理
+ returnButton.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ finish();
+ }
+ });
+
+
+
+ }
+
+}
diff --git a/app/src/main/java/org/ntlab/acanthus_client/views/userpage/workList/WorkListFragment.java b/app/src/main/java/org/ntlab/acanthus_client/views/userpage/workList/WorkListFragment.java
deleted file mode 100644
index dc4899c..0000000
--- a/app/src/main/java/org/ntlab/acanthus_client/views/userpage/workList/WorkListFragment.java
+++ /dev/null
@@ -1,7 +0,0 @@
-package org.ntlab.acanthus_client.views.userpage.workList;
-
-public class WorkListFragment {
-
-
-
-}
diff --git a/app/src/main/res/layout/activity_follow_list.xml b/app/src/main/res/layout/activity_follow_list.xml
new file mode 100644
index 0000000..3dd42ce
--- /dev/null
+++ b/app/src/main/res/layout/activity_follow_list.xml
@@ -0,0 +1,19 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_follower_list.xml b/app/src/main/res/layout/activity_follower_list.xml
new file mode 100644
index 0000000..24350a6
--- /dev/null
+++ b/app/src/main/res/layout/activity_follower_list.xml
@@ -0,0 +1,19 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_work_list.xml b/app/src/main/res/layout/activity_work_list.xml
new file mode 100644
index 0000000..ae053ea
--- /dev/null
+++ b/app/src/main/res/layout/activity_work_list.xml
@@ -0,0 +1,19 @@
+
+
+
+
+
\ No newline at end of file