diff --git a/common/src/main/java/com/yunbao/common/adapter/LiveNewWishAdapter.java b/common/src/main/java/com/yunbao/common/adapter/LiveNewWishAdapter.java
index 293b173c7..56d24d792 100644
--- a/common/src/main/java/com/yunbao/common/adapter/LiveNewWishAdapter.java
+++ b/common/src/main/java/com/yunbao/common/adapter/LiveNewWishAdapter.java
@@ -79,6 +79,20 @@ public class LiveNewWishAdapter extends RecyclerView.Adapter {
});
} else if (holder instanceof WeekWishItemViewHolder) {
WeekWishItemViewHolder weekWishItemViewHolder = (WeekWishItemViewHolder) holder;
+ weekWishItemViewHolder.steWeekWishData(wishList.get(position), position, new WeekWishItemViewHolder.WeekWishItemListener() {
+ @Override
+ public void onDelete(int index) {
+ wishList.remove(index);
+ notifyDataSetChanged();
+ }
+
+ @Override
+ public void onUpdate(WishModel model, int index) {
+ wishList.remove(index);
+ wishList.add(index, model);
+ notifyItemChanged(index);
+ }
+ });
} else if (holder instanceof LunarWishItemViewHolder) {
LunarWishItemViewHolder lunarWishItemViewHolder = (LunarWishItemViewHolder) holder;
} else if (holder instanceof SeasonalWishItemViewHolder) {
diff --git a/common/src/main/java/com/yunbao/common/views/WeekWishItemViewHolder.java b/common/src/main/java/com/yunbao/common/views/WeekWishItemViewHolder.java
index ab485f299..422c2e304 100644
--- a/common/src/main/java/com/yunbao/common/views/WeekWishItemViewHolder.java
+++ b/common/src/main/java/com/yunbao/common/views/WeekWishItemViewHolder.java
@@ -1,12 +1,103 @@
package com.yunbao.common.views;
import android.view.View;
+import android.widget.FrameLayout;
+import android.widget.ImageView;
+import android.widget.ProgressBar;
+import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
-public class WeekWishItemViewHolder extends RecyclerView.ViewHolder {
+import com.yunbao.common.R;
+import com.yunbao.common.bean.WishModel;
+import com.yunbao.common.glide.ImgLoader;
+import com.yunbao.common.utils.WordsTypeUtil;
+import com.yunbao.common.views.weight.ViewClicksAntiShake;
+
+public class WeekWishItemViewHolder extends RecyclerView.ViewHolder {
+ private TextView wishTab, wishlistName, wishlistProgress, wishlistNum, wishlistNum2, subtraction, addition;
+ private ImageView wishIcon;
+ private FrameLayout wishIconBg, tabBg, iconCancel;
+ private ProgressBar progressBar;
+
public WeekWishItemViewHolder(@NonNull View itemView) {
super(itemView);
+ wishTab = itemView.findViewById(R.id.wish_tab);
+ wishIcon = itemView.findViewById(R.id.wish_icon);
+ tabBg = itemView.findViewById(R.id.tab_bg);
+ wishIconBg = itemView.findViewById(R.id.wish_icon_bg);
+ iconCancel = itemView.findViewById(R.id.icon_cancel);
+ wishlistName = itemView.findViewById(R.id.wishlist_name);
+ progressBar = itemView.findViewById(R.id.progressBar);
+ wishlistProgress = itemView.findViewById(R.id.wishlist_progress);
+ wishlistNum = itemView.findViewById(R.id.wishlist_num);
+ wishlistNum2 = itemView.findViewById(R.id.wishlist_num2);
+ subtraction = itemView.findViewById(R.id.subtraction);
+ addition = itemView.findViewById(R.id.addition);
+ }
+
+ public void steWeekWishData(WishModel model, int index, WeekWishItemListener listener) {
+ if (model != null) {
+ itemView.findViewById(R.id.hind_layout).setVisibility(View.VISIBLE);
+ itemView.findViewById(R.id.wish_icon_bg).setVisibility(View.VISIBLE);
+ itemView.findViewById(R.id.progress_bar).setVisibility(View.VISIBLE);
+ iconCancel.setVisibility(View.VISIBLE);
+ wishTab.setVisibility(View.VISIBLE);
+ wishlistName.setVisibility(View.VISIBLE);
+ wishTab.setText(String.format(itemView.getContext().getString(R.string.wish_number), WordsTypeUtil.numberConvertToUppercase(index + 1)));
+ ImgLoader.display(itemView.getContext(), model.getWishlistIcon(), wishIcon);
+ tabBg.setBackgroundResource(R.mipmap.bg_day_wish);
+ wishIconBg.setBackgroundResource(R.mipmap.background_wish_item);
+ wishlistName.setText(model.getWishlistName());
+ progressBar.setMax(model.wishProgress());
+ progressBar.setProgress(model.wishCurrent());//当前进度
+ wishlistProgress.setText(model.getWishlistProgress());
+ wishlistNum.setText(String.format("/%s", model.getWishlistNum()));
+ wishlistNum2.setText(String.format("x%s", model.getWishlistNum()));
+ ViewClicksAntiShake.clicksAntiShake(iconCancel, new ViewClicksAntiShake.ViewClicksCallBack() {
+ @Override
+ public void onViewClicks() {
+ if (listener != null) {
+ listener.onDelete(index);
+ }
+ }
+ });
+ ViewClicksAntiShake.clicksAntiShake(addition, new ViewClicksAntiShake.ViewClicksCallBack() {
+ @Override
+ public void onViewClicks() {
+ int number = model.wishProgress();
+ model.setWishlistNum(String.valueOf(number + 1));
+ if (listener != null) {
+ listener.onUpdate(model, index);
+ }
+ }
+ });
+ ViewClicksAntiShake.clicksAntiShake(subtraction, new ViewClicksAntiShake.ViewClicksCallBack() {
+ @Override
+ public void onViewClicks() {
+ int number = model.wishProgress();
+ model.setWishlistNum(String.valueOf(number - 1));
+ if (listener != null) {
+ listener.onUpdate(model, index);
+ }
+ }
+ });
+ } else {
+ itemView.findViewById(R.id.hind_layout).setVisibility(View.GONE);
+ itemView.findViewById(R.id.progress_bar).setVisibility(View.GONE);
+ tabBg.setBackground(null);
+ wishTab.setVisibility(View.GONE);
+ wishlistName.setVisibility(View.GONE);
+ iconCancel.setVisibility(View.GONE);
+ itemView.findViewById(R.id.wish_icon_bg).setVisibility(View.GONE);
+
+ }
+ }
+
+ public interface WeekWishItemListener {
+ void onDelete(int index);
+
+ void onUpdate(WishModel model, int index);
}
}
diff --git a/common/src/main/res/layout/item_week_wish.xml b/common/src/main/res/layout/item_week_wish.xml
index 65f15c0a4..089a53482 100644
--- a/common/src/main/res/layout/item_week_wish.xml
+++ b/common/src/main/res/layout/item_week_wish.xml
@@ -3,31 +3,42 @@
android:layout_width="match_parent"
android:layout_height="119dp"
android:layout_margin="4dp"
+ android:id="@+id/tab_bg"
android:background="@mipmap/bg_day_wish">
-
+ android:layout_marginEnd="19dp">
+
+
+
+
+ android:layout_marginTop="40dp">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file