From cdf78f2bc504bdc31a790fb569983f451cf443b1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E7=8E=89=E4=B9=85?= <1484288157@qq.com> Date: Tue, 2 Jun 2020 18:40:28 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B8=B8=E6=88=8F=E8=AF=A6=E6=83=85UI=E4=BC=98?= =?UTF-8?q?=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/gh/common/util/DisplayUtils.java | 16 +++++++++++++++- .../game/horizontal/GameHorizontalAdapter.kt | 11 +++++++---- .../gamecenter/gamedetail/desc/DescAdapter.kt | 12 ++++++++++-- .../res/drawable-xhdpi/rating_phone_icon.png | Bin 432 -> 450 bytes .../res/drawable/progressbar_rating_style.xml | 4 ++-- .../layout/gamedetail_item_custom_column.xml | 2 +- .../main/res/layout/gamedetail_item_image.xml | 3 ++- app/src/main/res/layout/item_game_raiders.xml | 2 +- app/src/main/res/layout/rating_comment_item.xml | 6 ++++-- 9 files changed, 42 insertions(+), 14 deletions(-) diff --git a/app/src/main/java/com/gh/common/util/DisplayUtils.java b/app/src/main/java/com/gh/common/util/DisplayUtils.java index 9f3e2a0354..c2ab699db4 100644 --- a/app/src/main/java/com/gh/common/util/DisplayUtils.java +++ b/app/src/main/java/com/gh/common/util/DisplayUtils.java @@ -206,7 +206,7 @@ public class DisplayUtils { public static void setStatusBarColor(Activity activity, int color, boolean lightStatusBar) { Window window = activity.getWindow(); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { - if(!isMiuiOs()) { + if (!isMiuiOs()) { //取消设置透明状态栏,使 ContentView 内容不再覆盖状态栏 window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); //需要设置这个 flag 才能调用 setStatusBarColor 来设置状态栏颜色 @@ -257,6 +257,20 @@ public class DisplayUtils { return false; } + public static int getScreenWidth() { + WindowManager manager = (WindowManager) HaloApp.getInstance().getApplication().getSystemService(Context.WINDOW_SERVICE); + DisplayMetrics metrics = new DisplayMetrics(); + manager.getDefaultDisplay().getMetrics(metrics); + return metrics.widthPixels; + } + + public static int getScreenHeight() { + WindowManager manager = (WindowManager) HaloApp.getInstance().getApplication().getSystemService(Context.WINDOW_SERVICE); + DisplayMetrics metrics = new DisplayMetrics(); + manager.getDefaultDisplay().getMetrics(metrics); + return metrics.heightPixels; + } + public static boolean hasSoftKeys(Context context) { if (!(context instanceof Activity)) return false; diff --git a/app/src/main/java/com/gh/gamecenter/game/horizontal/GameHorizontalAdapter.kt b/app/src/main/java/com/gh/gamecenter/game/horizontal/GameHorizontalAdapter.kt index 034806da73..f35d8c21b8 100644 --- a/app/src/main/java/com/gh/gamecenter/game/horizontal/GameHorizontalAdapter.kt +++ b/app/src/main/java/com/gh/gamecenter/game/horizontal/GameHorizontalAdapter.kt @@ -2,11 +2,9 @@ package com.gh.gamecenter.game.horizontal import android.content.Context import android.view.ViewGroup +import androidx.recyclerview.widget.RecyclerView import com.gh.common.exposure.ExposureEvent -import com.gh.common.util.DataCollectionUtils -import com.gh.common.util.MtaHelper -import com.gh.common.util.StringUtils -import com.gh.common.util.dip2px +import com.gh.common.util.* import com.gh.gamecenter.GameDetailActivity import com.gh.gamecenter.R import com.gh.gamecenter.databinding.GameHorizontalItemBinding @@ -55,6 +53,11 @@ class GameHorizontalAdapter(context: Context, override fun onBindViewHolder(holder: GameHorizontalItemViewHolder, position: Int) { holder.binding.root.setPadding(0, 0, 0, 8f.dip2px()) + if (exposureEventList.isNullOrEmpty()) { + val params = holder.binding.root.layoutParams as RecyclerView.LayoutParams + params.width = RecyclerView.LayoutParams.WRAP_CONTENT + holder.binding.root.layoutParams = params + } val gameEntity = mSubjectEntity.data!![position + getIndex()] holder.binding.game = gameEntity diff --git a/app/src/main/java/com/gh/gamecenter/gamedetail/desc/DescAdapter.kt b/app/src/main/java/com/gh/gamecenter/gamedetail/desc/DescAdapter.kt index 32627875bc..b32ea4b233 100644 --- a/app/src/main/java/com/gh/gamecenter/gamedetail/desc/DescAdapter.kt +++ b/app/src/main/java/com/gh/gamecenter/gamedetail/desc/DescAdapter.kt @@ -19,6 +19,7 @@ import com.gh.common.util.* import com.gh.common.view.ExpandTextView import com.gh.common.view.GridSpacingItemColorDecoration import com.gh.common.view.divider.HorizontalDividerItemDecoration +import com.gh.common.view.divider.VerticalDividerItemDecoration import com.gh.gamecenter.GameNewsActivity import com.gh.gamecenter.R import com.gh.gamecenter.SuggestionActivity @@ -268,6 +269,7 @@ class DescAdapter(context: Context, // viewHolder.itemView.setPadding(viewHolder.itemView.paddingLeft, viewHolder.itemView.paddingTop - DisplayUtils.dip2px(4f), viewHolder.itemView.paddingRight, viewHolder.itemView.paddingBottom) val galleryParams = viewHolder.binding.galleryRv.layoutParams as ConstraintLayout.LayoutParams galleryParams.topMargin = DisplayUtils.dip2px(6f) + galleryParams.rightMargin = 0 viewHolder.binding.galleryRv.layoutParams = galleryParams val subjectEntity = descItemList[position].recommendedGames @@ -278,6 +280,12 @@ class DescAdapter(context: Context, subjectAdapter = GameHorizontalAdapter(mContext, subjectEntity, true) subjectAdapter.gameName = gameName ?: "" (viewHolder.binding.galleryRv.itemAnimator as DefaultItemAnimator).supportsChangeAnimations = false + + val dividerWidth = (DisplayUtils.getScreenWidth() - 20F.dip2px() * 2 - 72F.dip2px() * 4) / 3 + val itemDecoration = VerticalDividerItemDecoration.Builder(mContext) + .size(dividerWidth) + .color(ContextCompat.getColor(mContext, R.color.tranparent)).build() + viewHolder.binding.galleryRv.addItemDecoration(itemDecoration) viewHolder.binding.galleryRv.adapter = subjectAdapter } else { (subjectAdapter as GameHorizontalAdapter).checkResetData(subjectEntity) @@ -304,7 +312,7 @@ class DescAdapter(context: Context, viewHolder.binding.recyclerview.adapter = commentsAdapter viewHolder.binding.recyclerview.layoutManager = LinearLayoutManager(mContext) val itemDecoration = HorizontalDividerItemDecoration.Builder(mContext) - .size(DisplayUtils.dip2px(1f)) + .size(DisplayUtils.dip2px(0.5f)) .margin(DisplayUtils.dip2px(16f)) .color(ContextCompat.getColor(mContext, R.color.text_f5f5f5)).build() viewHolder.binding.recyclerview.addItemDecoration(itemDecoration) @@ -544,7 +552,7 @@ class DescAdapter(context: Context, adapter = libaoAdapter if (itemDecorationCount == 0) { val itemDecoration = HorizontalDividerItemDecoration.Builder(mContext) - .size(DisplayUtils.dip2px(1f)) + .size(DisplayUtils.dip2px(0.5f)) .margin(DisplayUtils.dip2px(16f)) .color(ContextCompat.getColor(mContext, R.color.text_f5f5f5)).build() addItemDecoration(itemDecoration) diff --git a/app/src/main/res/drawable-xhdpi/rating_phone_icon.png b/app/src/main/res/drawable-xhdpi/rating_phone_icon.png index 3fc6008149516c8e4dd1e4bcfbdc447a8869fa49..0fe9e7b149de041b12cc4b777b0ab9c864d3c4ca 100644 GIT binary patch delta 330 zcmV-Q0k!_H1HuE4fqyJXL_t(Y4egaNZi7G&MYFK9DbhuX%hbLCtqUK5f=FB-tzG8= zAX8BK04dyZ1=lHUC0&ZNfbcxQS}wo_Ln?bDU^F}b^Jj$k>Omromg^F7ppF(!^La@R=iqmEuM cVBvu40Fs}GCyf@GL;wH)07*qoM6N<$f`%rYoB#j- delta 312 zcmV-80muHr1F!>-fqxoFL_t(Y4egc94T3-rg&o)myqRDPw!oD_AfW+^umQ+YfF*FH z1#6J#%?cnmPj=#EH(7o>$t37z=gsHajp5ObtE#G~@B0fc<6#&M*z+wSda||&!|x6sS z^fRv7rNzFFL%iN2JggV6lj#F=4%-?&z>E{E#lrx}4jb#UM`c+)kOdqxN67}K+R-q{ zcSlCUVFMka5HSs`r + android:endColor = "@color/text_dddddd" + android:startColor = "@color/text_dddddd" /> diff --git a/app/src/main/res/layout/gamedetail_item_custom_column.xml b/app/src/main/res/layout/gamedetail_item_custom_column.xml index feb91888a5..91c2ba0838 100644 --- a/app/src/main/res/layout/gamedetail_item_custom_column.xml +++ b/app/src/main/res/layout/gamedetail_item_custom_column.xml @@ -52,7 +52,7 @@ diff --git a/app/src/main/res/layout/gamedetail_item_image.xml b/app/src/main/res/layout/gamedetail_item_image.xml index 263339a982..0549ff5c12 100644 --- a/app/src/main/res/layout/gamedetail_item_image.xml +++ b/app/src/main/res/layout/gamedetail_item_image.xml @@ -44,7 +44,8 @@ imageUrl="@{link.image}" android:layout_width="match_parent" android:layout_height="wrap_content" - app:placeholderImage="@drawable/occupy" /> + app:placeholderImage="@drawable/occupy" + app:roundedCornerRadius="5dp"/> diff --git a/app/src/main/res/layout/item_game_raiders.xml b/app/src/main/res/layout/item_game_raiders.xml index 16106be703..d8cb21e356 100644 --- a/app/src/main/res/layout/item_game_raiders.xml +++ b/app/src/main/res/layout/item_game_raiders.xml @@ -43,7 +43,7 @@ + app:roundAsCircle="true" + app:roundingBorderColor="@color/text_f5f5f5" + app:roundingBorderWidth="1dp"/>