diff --git a/.idea/misc.xml b/.idea/misc.xml
index 81be3c3..a187139 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -13,19 +13,23 @@
-
-
+
+
+
+
+
-
+
+
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 0a7c56c..a40b3e2 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -80,7 +80,7 @@
-
+
+
+
+
+
RequestingDataList = new ArrayList<>();
+
+ //xmlからrvにRecyclerViewを取得、アダプターを宣言
+ RecyclerView rv = (RecyclerView) findViewById(R.id.requestingList);
+ RequestingActivity.RequestingAdapter adapter = new RequestingActivity.RequestingAdapter(RequestingDataList);
+
+ //一行ずつを縦に(LinearLayout)表示するLayoutManagerを宣言
+ LinearLayoutManager llm = new LinearLayoutManager(this);
+ //
+ RecyclerView.ItemDecoration itemDecoration =
+ new DividerItemDecoration(this, DividerItemDecoration.VERTICAL);
+ rv.addItemDecoration(itemDecoration);
+
+ rv.setHasFixedSize(true);
+ rv.setLayoutManager(llm);
+
}
+
+
+ //RecyclerViewのための内部クラス
+ //とりあえずnameのみで仮作成
+
+ //Adapter
+ public class RequestingAdapter extends RecyclerView.Adapter {
+
+ private List list;
+
+ public RequestingAdapter(List list) {
+ this.list =list;
+ }
+
+ public void setList(List list) {
+ this.list = list;
+ }
+
+ @NonNull
+ @Override
+ public RequestingActivity.RequestingViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
+
+ //ShopActivityのレイアウトのままなので、ここを作って反映させる
+ View inflate = LayoutInflater.from(parent.getContext()).inflate(R.layout.layout_shop_activity_posts, parent,false);
+ RequestingActivity.RequestingViewHolder vh = new RequestingActivity.RequestingViewHolder(inflate);
+ return vh;
+ }
+
+ @Override
+ public void onBindViewHolder(@NonNull RequestingActivity.RequestingViewHolder holder, int position) {
+ holder.nameView.setText(list.get(position).getName());
+ }
+
+ @Override
+ public int getItemCount() {
+ return list.size();
+ }
+ }
+
+ //ViewHolder
+ public class RequestingViewHolder extends RecyclerView.ViewHolder {
+ public TextView nameView;
+
+ public RequestingViewHolder(@NonNull View itemView) {
+ super(itemView);
+ nameView = (TextView) itemView.findViewById(R.id.userName);
+ }
+ }
+
+ //DataModel
+ public static class RequestingDataModel {
+ private String name;
+
+ public String getName() {
+ return name;
+ }
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ }
+
}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/nemophila/RequestingDialogFragment.java b/app/src/main/java/com/example/nemophila/RequestingDialogFragment.java
new file mode 100644
index 0000000..03fa52f
--- /dev/null
+++ b/app/src/main/java/com/example/nemophila/RequestingDialogFragment.java
@@ -0,0 +1,29 @@
+package com.example.nemophila;
+
+import android.app.Dialog;
+import android.content.DialogInterface;
+import android.os.Bundle;
+
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.appcompat.app.AlertDialog;
+import androidx.fragment.app.DialogFragment;
+
+public class RequestingDialogFragment extends DialogFragment {
+
+ @NonNull
+ @Override
+ public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) {
+ AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+ builder.setTitle("フレンド申請")
+ .setMessage("IDにあったユーザー")
+ .setPositiveButton("申請を送る", new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int id) {
+ // ボタンを押した時の処理
+ }
+ })
+ .setNegativeButton("キャンセル", null);
+ return builder.create();
+ }
+
+}
diff --git a/app/src/main/java/com/example/nemophila/ShopActivity.java b/app/src/main/java/com/example/nemophila/ShopActivity.java
index 3b9d9bb..b99788f 100644
--- a/app/src/main/java/com/example/nemophila/ShopActivity.java
+++ b/app/src/main/java/com/example/nemophila/ShopActivity.java
@@ -253,7 +253,8 @@
}
public String getDate() {
- return date;}
+ return date;
+ }
public void setDate(String date) {
this.date = date;
}
diff --git a/app/src/main/java/com/example/nemophila/entities/AccountNameJson.java b/app/src/main/java/com/example/nemophila/entities/AccountNameJson.java
new file mode 100644
index 0000000..d865620
--- /dev/null
+++ b/app/src/main/java/com/example/nemophila/entities/AccountNameJson.java
@@ -0,0 +1,6 @@
+package com.example.nemophila.entities;
+
+public class AccountNameJson {
+ private String name;
+ private String id;
+}
diff --git a/app/src/main/java/com/example/nemophila/resources/FriendsRest.java b/app/src/main/java/com/example/nemophila/resources/FriendsRest.java
index dd66b14..52b4fbf 100644
--- a/app/src/main/java/com/example/nemophila/resources/FriendsRest.java
+++ b/app/src/main/java/com/example/nemophila/resources/FriendsRest.java
@@ -1,5 +1,6 @@
package com.example.nemophila.resources;
+import com.example.nemophila.entities.AccountNameJson;
import com.example.nemophila.entities.PostJson;
import java.util.Collection;
@@ -13,9 +14,8 @@
import retrofit2.http.Path;
public interface FriendsRest {
-
@GET("accounts/{uid}/friends")
- Call> getFriends(
+ Call> getFriends(
@Path("uid") String uid
);
@@ -35,7 +35,7 @@
);
@GET("/accounts/{uid}/requesting")
- Call> getRequesting(
+ Call> getRequesting(
@Path("uid") String uid
);
@@ -56,7 +56,7 @@
);
@GET("accounts/{uid}/reqested")
- Call> getRequested(
+ Call> getRequested(
@Path("uid") String uid
);
diff --git a/app/src/main/java/com/example/nemophila/viewmodels/FriendViewModel.java b/app/src/main/java/com/example/nemophila/viewmodels/FriendViewModel.java
index bf32a70..2c79201 100644
--- a/app/src/main/java/com/example/nemophila/viewmodels/FriendViewModel.java
+++ b/app/src/main/java/com/example/nemophila/viewmodels/FriendViewModel.java
@@ -3,7 +3,9 @@
import androidx.lifecycle.MutableLiveData;
import androidx.lifecycle.ViewModel;
+import com.example.nemophila.entities.AccountNameJson;
import com.example.nemophila.entities.Post;
+import com.example.nemophila.entities.PostJson;
import com.example.nemophila.resources.AccountsRest;
import com.example.nemophila.resources.FriendsRest;
@@ -20,9 +22,9 @@
private final Retrofit retrofit;
private final FriendsRest friendsRest;
// ライブデータ
- private final MutableLiveData friendsLiveData;
- private final MutableLiveData requestedLiveData;
- private final MutableLiveData> requestingLiveData;
+ private final MutableLiveData> friendsLiveData;
+ private final MutableLiveData> requestedLiveData;
+ private final MutableLiveData> requestingLiveData;
// コンストラクタ
public FriendViewModel() {
@@ -37,15 +39,38 @@
}
// ライブデータの取得(ゲッター)
- public MutableLiveData getFriendsLiveData() {
+ public MutableLiveData> getFriendsLiveData() {
return friendsLiveData;
}
- public MutableLiveData getRequestedLiveData() {
+ public MutableLiveData> getRequestedLiveData() {
return requestedLiveData;
}
- public MutableLiveData> getRequestingLiveData() { return requestingLiveData; }
+ public MutableLiveData> getRequestingLiveData() { return requestingLiveData; }
- public void searchFriend(String uid,String fid, String token) {
+
+
+ public void getFriends(String uid) {
+ Call> call = friendsRest.getFriends(uid);
+ call.enqueue(new Callback>() {
+ @Override
+ public void onResponse(Call> call, Response> response) {
+ if (response.isSuccessful()) {
+ System.out.println("Successful");
+ Collection accountNameJson = response.body();
+ friendsLiveData.setValue(accountNameJson);
+
+ } else {
+ System.out.println("ResponseError");
+ }
+ }
+ @Override
+ public void onFailure(Call> call, Throwable t) {
+ System.out.println(" NetworkError" + t);
+ }
+ });
+ }
+
+ public void putFriend(String uid,String fid, String token) {
Call call = friendsRest.putFriend(uid,fid,token);
call.enqueue(new Callback() {
@Override
@@ -62,4 +87,112 @@
}
});
}
+
+ public void deleteFriend(String uid,String fid, String token) {
+ Call call = friendsRest.deleteFriend(uid,fid,token);
+ call.enqueue(new Callback() {
+ @Override
+ public void onResponse(Call call, Response response) {
+ if (response.isSuccessful()) {
+ System.out.println("Successful");
+ } else {
+ System.out.println("ResponseError");
+ }
+ }
+ @Override
+ public void onFailure(Call call, Throwable t) {
+ System.out.println(" NetworkError" + t);
+ }
+ });
+ }
+
+ public void getRequesting(String uid) {
+ Call> call = friendsRest.getRequesting(uid);
+ call.enqueue(new Callback>() {
+ @Override
+ public void onResponse(Call> call, Response> response) {
+ if (response.isSuccessful()) {
+ System.out.println("Successful");
+ } else {
+ System.out.println("ResponseError");
+ }
+ }
+ @Override
+ public void onFailure(Call> call, Throwable t) {
+ System.out.println(" NetworkError" + t);
+ }
+ });
+ }
+
+ public void putRequesting(String uid,String requesting_id, String token) {
+ Call call = friendsRest.putRequesting(uid,requesting_id,token);
+ call.enqueue(new Callback() {
+ @Override
+ public void onResponse(Call call, Response response) {
+ if (response.isSuccessful()) {
+ System.out.println("Successful");
+ } else {
+ System.out.println("ResponseError");
+ }
+ }
+ @Override
+ public void onFailure(Call call, Throwable t) {
+ System.out.println(" NetworkError" + t);
+ }
+ });
+ }
+
+ public void deleteRequesting(String uid,String requesting_id, String token) {
+ Call call = friendsRest.deleteRequesting(uid,requesting_id,token);
+ call.enqueue(new Callback() {
+ @Override
+ public void onResponse(Call call, Response response) {
+ if (response.isSuccessful()) {
+ System.out.println("Successful");
+ } else {
+ System.out.println("ResponseError");
+ }
+ }
+ @Override
+ public void onFailure(Call call, Throwable t) {
+ System.out.println(" NetworkError" + t);
+ }
+ });
+ }
+
+ public void getRequested(String uid) {
+ Call> call = friendsRest.getRequested(uid);
+ call.enqueue(new Callback>() {
+ @Override
+ public void onResponse(Call> call, Response> response) {
+ if (response.isSuccessful()) {
+ System.out.println("Successful");
+ } else {
+ System.out.println("ResponseError");
+ }
+ }
+ @Override
+ public void onFailure(Call> call, Throwable t) {
+ System.out.println(" NetworkError" + t);
+ }
+ });
+ }
+
+ public void deleteRequested(String uid,String fid, String token) {
+ Call call = friendsRest.deleteRequested(uid,fid,token);
+ call.enqueue(new Callback() {
+ @Override
+ public void onResponse(Call call, Response response) {
+ if (response.isSuccessful()) {
+ System.out.println("Successful");
+ } else {
+ System.out.println("ResponseError");
+ }
+ }
+ @Override
+ public void onFailure(Call call, Throwable t) {
+ System.out.println(" NetworkError" + t);
+ }
+ });
+ }
}
diff --git a/app/src/main/res/layout/activity_requesting.xml b/app/src/main/res/layout/activity_requesting.xml
index b0eb893..e3b2df7 100644
--- a/app/src/main/res/layout/activity_requesting.xml
+++ b/app/src/main/res/layout/activity_requesting.xml
@@ -6,4 +6,97 @@
android:layout_height="match_parent"
tools:context=".RequestingActivity">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file