diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 824eed7..4f46913 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -64,12 +64,12 @@ android:exported="true" android:label="@string/title_activity_sign_up"> - - + + - - + + myPageActDataset = new ArrayList<>(); - MyPageActAdapter adapter = new MyPageActAdapter(myPageActDataset); + MyPageActAdapter adapter = new MyPageActAdapter(myPageActDataset) { + @Override + void onDeleteButtonClick(View view, int position, MyPageActDataModel dataModel) { + new AlertDialog.Builder(MyPageActivity.this) + .setTitle("警告") + .setMessage("この投稿を削除しますか?") + .setPositiveButton("Yes", new DialogInterface.OnClickListener() { + @Override + public void onClick(DialogInterface dialogInterface, int i) { + Toast.makeText(MyPageActivity.this, dataModel.getPid(), Toast.LENGTH_SHORT).show(); + System.out.println("投稿を削除しました。"); +// accountViewModel.deleteAccountPost(dataModel.getSid(), uid, dataModel.getPid(), token); + } + }) + .setNegativeButton("No", null) + .create() + .show(); + } + }; rv.setHasFixedSize(true); rv.setLayoutManager(llm); @@ -138,22 +162,24 @@ /* ここからMyPageActivityの内部クラス */ // Adapter - public class MyPageActAdapter extends RecyclerView.Adapter { - + abstract public class MyPageActAdapter extends RecyclerView.Adapter { private List list; - - public void setList(List list) { - this.list = list; - } - - public MyPageActAdapter(List list) { - this.list = list; - } + public void setList(List list) { this.list = list; } + public MyPageActAdapter(List list) { this.list = list; } @Override public MyPageActViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { View inflate = LayoutInflater.from(parent.getContext()).inflate(R.layout.layout_my_page_activity_posts, parent,false); MyPageActViewHolder vh = new MyPageActViewHolder(inflate); + + vh.deleteButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + int position = vh.getBindingAdapterPosition(); + onDeleteButtonClick(view, position, list.get(position)); + } + }); + return vh; } @@ -166,9 +192,9 @@ } @Override - public int getItemCount() { - return list.size(); - } + public int getItemCount() { return list.size(); } + + abstract void onDeleteButtonClick(View view, int position, MyPageActDataModel dataModel); } // ViewHolder @@ -177,13 +203,15 @@ public TextView rateView; public TextView genreView; public TextView commentView; + public ImageButton deleteButton; - public MyPageActViewHolder(View itemView) { - super(itemView); - dateView = (TextView) itemView.findViewById(R.id.date); - rateView = (TextView) itemView.findViewById(R.id.rate); - genreView = (TextView) itemView.findViewById(R.id.genre); - commentView = (TextView) itemView.findViewById(R.id.comment); + public MyPageActViewHolder(View view) { + super(view); + dateView = (TextView) view.findViewById(R.id.date); + rateView = (TextView) view.findViewById(R.id.rate); + genreView = (TextView) view.findViewById(R.id.genre); + commentView = (TextView) view.findViewById(R.id.comment); + deleteButton = view.findViewById(R.id.deleteButton); } } @@ -193,6 +221,8 @@ private String rate; private String genre; private String comment; + private String sid; + private String pid; public String getDate() { return date; @@ -221,5 +251,11 @@ public void setComment(String comment) { this.comment = comment; } + + public String getSid() { return sid; } + public void setSid(String sid) { this.sid = sid; } + + public String getPid() { return pid; } + public void setPid(String sid) { this.pid = pid; } } } diff --git a/app/src/main/res/drawable/blue_circle_button.xml b/app/src/main/res/drawable/blue_circle_button.xml index e007807..182023f 100644 --- a/app/src/main/res/drawable/blue_circle_button.xml +++ b/app/src/main/res/drawable/blue_circle_button.xml @@ -2,5 +2,5 @@ + android:color="@color/design_default_color_secondary"/> diff --git a/app/src/main/res/layout/activity_mypage.xml b/app/src/main/res/layout/activity_mypage.xml index 9dcff08..5ba4e04 100644 --- a/app/src/main/res/layout/activity_mypage.xml +++ b/app/src/main/res/layout/activity_mypage.xml @@ -106,7 +106,7 @@