From 5965c01b38a2e83cecd7616daa11185fc2499303 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期五, 28 五月 2021 10:12:27 +0800 Subject: [PATCH] 特价完善 --- app/src/main/java/com/tejia/lijin/app/ui/recommend/RecommendFragment.java | 83 +++++++++++++++++++++-------------------- 1 files changed, 42 insertions(+), 41 deletions(-) diff --git a/app/src/main/java/com/tejia/lijin/app/ui/recommend/RecommendFragment.java b/app/src/main/java/com/tejia/lijin/app/ui/recommend/RecommendFragment.java index 470a65c..81af07a 100644 --- a/app/src/main/java/com/tejia/lijin/app/ui/recommend/RecommendFragment.java +++ b/app/src/main/java/com/tejia/lijin/app/ui/recommend/RecommendFragment.java @@ -37,6 +37,7 @@ import com.tejia.lijin.app.BasicTextHttpResponseHandler; import com.tejia.lijin.app.R; import com.tejia.lijin.app.ShoppingApi; +import com.tejia.lijin.app.ShoppingApplication; import com.tejia.lijin.app.entity.FirstCategory; import com.tejia.lijin.app.entity.HomeBanner; import com.tejia.lijin.app.entity.JumpDetail; @@ -56,6 +57,7 @@ import com.wpc.library.RetainViewFragment; import com.wpc.library.content.ConnectivityChangeHelper; import com.wpc.library.util.NetUtils; +import com.wpc.library.util.ScreenUtils; import com.wpc.library.util.SystemCommon; import com.wpc.library.util.cache.DiskLruCache; import com.wpc.library.util.common.DimenUtils; @@ -92,6 +94,7 @@ */ public class RecommendFragment extends RetainViewFragment implements View.OnClickListener { + private static final String TAG = "RecommendFragment"; private LinearLayout ll_fragment_activity, ll_special_offer, ll_limit_time_buy, ll_jinbi_exchange_buy; private MyGridView gv_limit_time_goods, gv_jinbi_exchange_goods; private SwipeRefreshLayout rl_first_page; @@ -215,25 +218,19 @@ super.getItemOffsets(outRect, view, parent, state); int index = parent.getChildAdapterPosition(view); int total = parent.getAdapter().getItemCount(); - int minWidth = DimenUtils.dipToPixels(6, view.getContext()); - if (index % 4 == 0) { - outRect.left = 0; //绗竴鍒楀乏杈硅创杈� - outRect.right = minWidth * 3; - } else if (index % 4 == 1) { - outRect.left = minWidth * 1; - outRect.right = minWidth * 2; - } else if (index % 4 == 2) { - outRect.left = minWidth * 2; - outRect.right = minWidth * 1; + int space = RecommendCircleSpecialAdapter.SPCAE_DP; + + if (index % 2 == 0) { + outRect.bottom = DimenUtils.dipToPixels(space, view.getContext()); + Log.i(TAG, circleSpecials.get(index).getName()); + } else + outRect.bottom = 0; + + + if ((index == total - 1) || (index == total - 2 && total % 2 == 0)) { + outRect.right = 0; } else { - outRect.right = 0; //绗竴鍒楀乏杈硅创杈� - outRect.left = minWidth * 3; - } - - int lastRow = total / 4; - - if (lastRow != index / 4) { - outRect.bottom = minWidth * 4; + outRect.right = DimenUtils.dipToPixels(space, view.getContext()); } } }; @@ -328,7 +325,7 @@ if (last == total - 1 && mList.size() < count && isLoad) { page++; isLoad = false; - tv_loading.setText("姝e湪鍔犺浇鏇村鏁版嵁"); + tv_loading.setText(getResources().getString(R.string.loading_more_text)); iv_loading.setVisibility(View.VISIBLE); guessLikeByDevice(); } @@ -358,12 +355,7 @@ getAppPageNotification(); //璁剧疆鍒楄〃鍙互姘村钩婊戝姩锛屼袱琛� - GridLayoutManager layoutManager = new GridLayoutManager(getContext(), 4, GridLayoutManager.VERTICAL, false) { - @Override - public boolean canScrollVertically() { - return false; - } - }; + GridLayoutManager layoutManager = new GridLayoutManager(getContext(), 2, GridLayoutManager.HORIZONTAL, false); rv_special_offer.setLayoutManager(layoutManager); specialAdapter2 = new RecommendCircleSpecialAdapter(getActivity(), circleSpecials); rv_special_offer.setAdapter(specialAdapter2); @@ -371,7 +363,7 @@ seekBar = top.findViewById(R.id.slide_indicator_point); seekBar.setPadding(0, 0, 0, 0); seekBar.setThumbOffset(0); - seekBar.setVisibility(View.GONE); +// seekBar.setVisibility(View.GONE); rv_special_offer.addItemDecoration(circleSpecialItemDecoration); @@ -714,7 +706,7 @@ gradientDrawable.setSize(DimenUtils.dip2px(getContext(), 50) * 5 / (circleSpecials.size() / 2) , DimenUtils.dip2px(getContext(), 4)); } -// seekBar.setVisibility(mSpecial2s.size() <= 10 ? View.GONE : View.VISIBLE); + seekBar.setVisibility(circleSpecials.size() <= 8 ? View.GONE : View.VISIBLE); if (list2 == null || list2.size() == 0) { rv_special_offer.setVisibility(View.GONE); @@ -758,7 +750,7 @@ } else { fl_fragment_activity.setVisibility(View.VISIBLE); } - showActivity1(list3, url); + showBigActivity(list3, url); } } @@ -926,8 +918,7 @@ && mList.size() == 0) { pd.show(); } - String uid = getContext().getSharedPreferences("user", MODE_PRIVATE).getString("uid", ""); - ShoppingApi.getRecommendIndex(vp_banner.getContext(), uid, new BasicTextHttpResponseHandler() { + ShoppingApi.getRecommendIndex(vp_banner.getContext(), UserUtil.getUid(ShoppingApplication.application), new BasicTextHttpResponseHandler() { @Override public void onFinish() { super.onFinish(); @@ -969,7 +960,7 @@ } circleSpecials.addAll(list2); specialAdapter2.notifyDataSetChanged(); -// seekBar.setVisibility(mSpecial2s.size() <= 10 ? View.GONE : View.VISIBLE); + seekBar.setVisibility(circleSpecials.size() <= 8 ? View.GONE : View.VISIBLE); if (circleSpecials.size() > 10) { GradientDrawable gradientDrawable = (GradientDrawable) seekBar.getThumb(); //鏍规嵁鍒楄〃鐨勪釜鏁帮紝鍔ㄦ�佽缃父鏍囩殑澶у皬锛岃缃父鏍囩殑鏃跺�欙紝progress杩涘害鐨勯鑹茶缃负鍜宻eekbar鐨勯鑹茶缃殑涓�鏍风殑锛屾墍浠ュ氨涓嶆樉绀鸿繘搴︿簡銆� @@ -1000,7 +991,7 @@ String url = jsonObject.optJSONObject("data") .optJSONObject("activityArea").optString("bottomPicture"); - showActivity1(list3, url); + showBigActivity(list3, url); if (list3 == null || list3.size() == 0) { fl_fragment_activity.setVisibility(View.GONE); } else { @@ -1039,6 +1030,7 @@ .optJSONArray("list").toString(), new TypeToken<List<SpecialOffer2>>() { }.getType()); + list5.clear(); showActivity2(list5); if (list5 == null || list5.size() == 0) { @@ -1217,7 +1209,6 @@ // goodsAdapter.notifyItemRangeChanged(goodsAdapter.getItemCount(), list.size());//鍊掑簭鎵归噺鍒锋柊鍒楄〃 count = jsonObject.optJSONObject("data").optInt("count"); // tv_recommend_goods_hint.setVisibility(mList.size() > 0 ? View.VISIBLE : View.GONE); - v_divider.setVisibility(mList.size() > 0 ? View.VISIBLE : View.GONE); if (mList.size() == count) { bottom.setVisibility(View.VISIBLE); @@ -1285,12 +1276,22 @@ }); } - /* - 娲诲姩涓撻3 + + /** + * 澶ф椿鍔ㄤ笓棰� + * + * @param mList + * @param bottomPic */ - private void showActivity1(final List<SpecialOffer2> mList, String bottomPic) { + private void showBigActivity(final List<SpecialOffer2> mList, String bottomPic) { if (mList.size() > 0) { - float screenWidth = SystemCommon.getScreenWidth(vp_banner.getContext()); + int screenWidth = ScreenUtils.getScreenWidth(getContext()); + ViewGroup.MarginLayoutParams p1 = (ViewGroup.MarginLayoutParams) ((View) fl_fragment_activity.getParent()).getLayoutParams(); + + int rowSpace=DimenUtils.dip2px(getContext(),10); + int smallImageWidth; + int bigImageWidth=screenWidth-p1.leftMargin-p1.rightMargin; + float actTotalHeight = (screenWidth - DimenUtils.dip2px(getContext(), 20)) * 7 / 20; for (int i = 0; i < mList.size(); i++) { if (i > 0 && i % 2 == 0) { @@ -1300,8 +1301,8 @@ } FrameLayout.LayoutParams params0 = new FrameLayout.LayoutParams((int) (screenWidth - DimenUtils.dip2px(getContext(), 20)), (int) actTotalHeight); - params0.leftMargin = DimenUtils.dip2px(getContext(), 10); - params0.rightMargin = DimenUtils.dip2px(getContext(), 10); + params0.leftMargin = DimenUtils.dip2px(getContext(), 0); + params0.rightMargin = DimenUtils.dip2px(getContext(), 0); params0.topMargin = DimenUtils.dip2px(getContext(), 15); params0.bottomMargin = DimenUtils.dip2px(getContext(), 10); ll_fragment_activity.setLayoutParams(params0); @@ -1311,7 +1312,7 @@ iv_activity_bg.setLayoutParams(new FrameLayout.LayoutParams(ViewGroup.LayoutParams .MATCH_PARENT, (int) actTotalHeight + DimenUtils.dip2px(getContext(), 25))); - Glide.with(getContext()).load(bottomPic).into(iv_activity_bg); +// Glide.with(getContext()).load(bottomPic).into(iv_activity_bg); for (int i = 0; i < mList.size(); i++) { if (i == 0) { @@ -1322,7 +1323,7 @@ (int) (screenWidth - DimenUtils.dip2px(getContext(), 20)) * 7 / 20); params.gravity = Gravity.TOP; iv.setLayoutParams(params); - iv.setScaleType(ImageView.ScaleType.CENTER_CROP); + iv.setScaleType(ImageView.ScaleType.FIT_XY); Glide.with(getContext()).load(info.getPicture()).into(iv); iv.setOnClickListener(new View.OnClickListener() { -- Gitblit v1.8.0