更改游戏列表开服标签的实现方式

This commit is contained in:
kehaoyuan
2018-11-22 19:17:18 +08:00
parent 15f4f58164
commit c8e32fd968
7 changed files with 25 additions and 41 deletions

View File

@ -181,7 +181,7 @@ class GameFragmentAdapter(context: Context, model: GameViewModel, var blockName:
}
holder.binding.game = gameEntity
holder.binding.subjectTag = subjectData?.tag
holder.initServerType(gameEntity, mContext)
holder.initServerType(gameEntity!!)
holder.binding.executePendingBindings()
if (subjectData?.isOrder!!) {

View File

@ -1,10 +1,8 @@
package com.gh.gamecenter.game
import android.content.Context
import android.text.TextUtils
import android.view.View
import com.gh.base.BaseRecyclerViewHolder
import com.gh.common.util.DisplayUtils
import com.gh.gamecenter.R
import com.gh.gamecenter.databinding.GameItemBinding
import com.gh.gamecenter.entity.GameEntity
@ -13,41 +11,28 @@ class GameItemViewHolder(bind: GameItemBinding) : BaseRecyclerViewHolder<Any>(bi
var binding = bind
fun initServerType(gameEntity: GameEntity?, context: Context) {
if (gameEntity == null) return
var paddRight = 0
fun initServerType(gameEntity: GameEntity) {
val serverRemark = gameEntity.serverRemark
if (gameEntity.test != null) {
binding.gameKaifuType.setVisibility(View.GONE)
binding.gameKaifuType.visibility = View.GONE
binding.gameKaifuType.text = ""
} else if (TextUtils.isEmpty(serverRemark)) {
val serverGenre = gameEntity.serverGenre
if (TextUtils.isEmpty(serverGenre)) {
binding.gameKaifuType.setVisibility(View.GONE)
binding.gameKaifuType.visibility = View.GONE
binding.gameKaifuType.text = ""
} else {
binding.gameKaifuType.setVisibility(View.VISIBLE)
binding.gameKaifuType.setText(serverGenre)
binding.gameKaifuType.visibility = View.VISIBLE
binding.gameKaifuType.text = serverGenre
binding.gameKaifuType.setBackgroundResource(R.drawable.textview_yellow_bg)
val i: Int
if (serverGenre!!.length <= 2)
i = 30
else if (serverGenre.length <= 4)
i = 50
else
i = 60
paddRight = DisplayUtils.dip2px(context!!, i.toFloat())
}
} else {
binding.gameKaifuType.setVisibility(View.VISIBLE)
binding.gameKaifuType.setText(serverRemark)
binding.gameKaifuType.visibility = View.VISIBLE
binding.gameKaifuType.text = serverRemark
binding.gameKaifuType.setBackgroundResource(R.drawable.textview_orange_up)
val i: Float = when {
serverRemark!!.length <= 2 -> 30F
serverRemark.length <= 4 -> 50F
else -> 60F
}
paddRight = DisplayUtils.dip2px(context, i)
}
binding.gameName.setPadding(0, 0, paddRight, 0)
binding.gameName.requestLayout()
}
}

View File

@ -138,7 +138,7 @@ class SearchGameDetailFragmentAdapter extends BaseRecyclerAdapter<ViewHolder> {
final GameItemBinding binding = gameItemViewHolder.getBinding();
final GameEntity gameEntity = gameList.get(position);
binding.setGame(gameEntity);
gameItemViewHolder.initServerType(gameEntity, mContext);
gameItemViewHolder.initServerType(gameEntity);
binding.getRoot().setOnClickListener(v -> {
if (searchMap.get(gameEntity.getId()) == null) {
EventBus.getDefault().post(new EBSearch("search", gameEntity.getId(), gameEntity.getName()));

View File

@ -154,7 +154,7 @@ class SearchGameListFragmentAdapter extends BaseRecyclerAdapter<ViewHolder> {
final GameItemViewHolder viewHolder = (GameItemViewHolder) holder;
GameItemBinding binding = viewHolder.getBinding();
binding.setGame(gameEntity);
viewHolder.initServerType(gameEntity, mContext);
viewHolder.initServerType(gameEntity);
holder.itemView.setOnClickListener(v -> {
if (searchMap.get(gameEntity.getId()) == null) {

View File

@ -89,7 +89,7 @@ class SubjectAdapter(context: Context,
holder.binding.game = gameEntity
holder.binding.subjectTag = subjectData.tagType
holder.initServerType(gameEntity, mContext)
holder.initServerType(gameEntity)
holder.binding.executePendingBindings()
if (subjectData.isOrder!!) {

View File

@ -48,7 +48,7 @@ public class GamePluginAdapter extends BaseRecyclerAdapter {
private void initGameNormalViewHolder(GameItemViewHolder holder, int position) {
final GameEntity gameEntity = mPluginList.get(position);
holder.initServerType(gameEntity, mContext);
holder.initServerType(gameEntity);
GameItemBinding binding = holder.getBinding();
binding.setGame(gameEntity);
binding.setIsShowPlatform(true);

View File

@ -39,7 +39,6 @@
android:maxLength = "3"
android:textColor = "@color/title"
android:textSize = "15sp"
android:text="1"
android:visibility = "visible" />
<RelativeLayout
@ -73,19 +72,19 @@
android:layout_weight = "1"
android:orientation = "vertical" >
<RelativeLayout
<LinearLayout
android:id = "@+id/game_name_container"
android:layout_width = "match_parent"
android:layout_height = "wrap_content" >
android:layout_width = "wrap_content"
android:layout_height = "wrap_content"
android:gravity = "center_vertical" >
<TextView
android:id = "@+id/game_name"
isShowPlatform = "@{isShowPlatform}"
setGameName = "@{game}"
android:layout_width = "wrap_content"
android:layout_width = "0dp"
android:layout_height = "wrap_content"
android:layout_centerVertical = "true"
android:ellipsize = "end"
android:layout_weight = "1"
android:includeFontPadding = "false"
android:lineSpacingMultiplier = "0.9"
android:singleLine = "true"
@ -97,8 +96,8 @@
android:id = "@+id/game_kaifu_type"
android:layout_width = "wrap_content"
android:layout_height = "15dp"
android:layout_alignRight = "@+id/game_name"
android:layout_centerVertical = "true"
android:layout_marginLeft = "7dp"
android:background = "@color/theme"
android:gravity = "center"
android:maxLines = "1"
android:paddingBottom = "0.5dp"
@ -107,7 +106,7 @@
android:textColor = "@android:color/white"
android:textSize = "9sp"
android:visibility = "gone" />
</RelativeLayout >
</LinearLayout >
<RelativeLayout
android:layout_width = "match_parent"