Merge branch 'dev' of gitlab.ghzhushou.com:halo/assistant-android into dev
This commit is contained in:
@ -239,11 +239,11 @@ class DescAdapter(context: Context,
|
||||
viewHolder.binding.expandRl.setOnClickListener {
|
||||
if (viewHolder.binding.updateTv.maxLines == 5) {
|
||||
viewHolder.binding.updateTv.maxLines = 100
|
||||
viewHolder.binding.expandIv.setImageResource(R.drawable.ic_category_arrow_up)
|
||||
viewHolder.binding.expandIv.setImageResource(R.drawable.ic_arrow_up)
|
||||
MtaHelper.onEvent("游戏详情", "展开更新内容", gameName)
|
||||
} else {
|
||||
viewHolder.binding.updateTv.maxLines = 5
|
||||
viewHolder.binding.expandIv.setImageResource(R.drawable.ic_category_arrow_down)
|
||||
viewHolder.binding.expandIv.setImageResource(R.drawable.ic_arrow_down)
|
||||
MtaHelper.onEvent("游戏详情", "收起更新内容", gameName)
|
||||
}
|
||||
notifyItemChanged(viewHolder.adapterPosition)
|
||||
@ -260,7 +260,7 @@ class DescAdapter(context: Context,
|
||||
val layoutManager = GridLayoutManager(mContext, 3)
|
||||
layoutManager.spanSizeLookup = object : GridLayoutManager.SpanSizeLookup() {
|
||||
override fun getSpanSize(position: Int): Int {
|
||||
return if (!TextUtils.isEmpty(tips!!.content)) {
|
||||
return if (tips!!.title != null) {
|
||||
if (position == 0) 3 else 1
|
||||
} else {
|
||||
1
|
||||
@ -274,7 +274,7 @@ class DescAdapter(context: Context,
|
||||
|
||||
viewHolder.gameDetailPluginRv.layoutManager = layoutManager
|
||||
viewHolder.gamedetailPluginExpandIv.visibility = View.GONE
|
||||
viewHolder.gameDetailPluginRv.adapter = GameDetailPluginAdapter(tag, tips, false, mContext)
|
||||
viewHolder.gameDetailPluginRv.adapter = GameDetailBasicInfoAdapter(tag, tips, false, mContext)
|
||||
}
|
||||
|
||||
private fun initPluginViewHolder(viewHolder: GameDetailPluginViewHolder, descItemData: DescItemData) {
|
||||
@ -301,10 +301,10 @@ class DescAdapter(context: Context,
|
||||
|
||||
if (mIsPluginExpanded) {
|
||||
viewHolder.gameDetailPluginRv.layoutManager = linearLayoutManager
|
||||
viewHolder.gamedetailPluginExpandIv.setImageResource(R.drawable.ic_category_arrow_up)
|
||||
viewHolder.gamedetailPluginExpandIv.setImageResource(R.drawable.ic_arrow_up)
|
||||
} else {
|
||||
viewHolder.gameDetailPluginRv.layoutManager = layoutManager
|
||||
viewHolder.gamedetailPluginExpandIv.setImageResource(R.drawable.ic_category_arrow_down)
|
||||
viewHolder.gamedetailPluginExpandIv.setImageResource(R.drawable.ic_arrow_down)
|
||||
}
|
||||
viewHolder.gameDetailPluginRv.adapter = GameDetailPluginAdapter(tag, tips, mIsPluginExpanded, mContext)
|
||||
viewHolder.gamedetailPluginOpen.setOnClickListener { _ ->
|
||||
@ -364,11 +364,11 @@ class DescAdapter(context: Context,
|
||||
mIsIntroExpanded = !mIsIntroExpanded
|
||||
if (mIsIntroExpanded) {
|
||||
viewHolder.introContent.maxLines = 100
|
||||
viewHolder.expandIv.setImageResource(R.drawable.ic_category_arrow_up)
|
||||
viewHolder.expandIv.setImageResource(R.drawable.ic_arrow_up)
|
||||
DataUtils.onMtaEvent(mContext, "游戏详情", "展开游戏介绍", gameName)
|
||||
} else {
|
||||
viewHolder.introContent.maxLines = 3
|
||||
viewHolder.expandIv.setImageResource(R.drawable.ic_category_arrow_down)
|
||||
viewHolder.expandIv.setImageResource(R.drawable.ic_arrow_down)
|
||||
DataUtils.onMtaEvent(mContext, "游戏详情", "收起游戏介绍", gameName)
|
||||
}
|
||||
notifyItemChanged(viewHolder.adapterPosition)
|
||||
|
||||
@ -0,0 +1,125 @@
|
||||
package com.gh.gamecenter.gamedetail.desc;
|
||||
|
||||
import android.content.Context;
|
||||
import android.graphics.Color;
|
||||
import android.support.v7.widget.RecyclerView;
|
||||
import android.text.TextUtils;
|
||||
import android.view.Gravity;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.LinearLayout;
|
||||
|
||||
import com.gh.common.util.ImageUtils;
|
||||
import com.gh.gamecenter.R;
|
||||
import com.gh.gamecenter.entity.TagEntity;
|
||||
import com.gh.gamecenter.entity.TipsEntity;
|
||||
import com.gh.gamecenter.entity.TitleEntity;
|
||||
import com.lightgame.adapter.BaseRecyclerAdapter;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
/**
|
||||
* Created by khy on 2017/3/27.
|
||||
*/
|
||||
public class GameDetailBasicInfoAdapter extends BaseRecyclerAdapter<RecyclerView.ViewHolder> {
|
||||
|
||||
public static final int POSITION_LEFT = 0;
|
||||
public static final int POSITION_MIDDLE = 1;
|
||||
public static final int POSITION_RIGHT = 2;
|
||||
public static final int LABEL_COLUMN_LIMIT = 3;
|
||||
private ArrayList<TagEntity> tags;
|
||||
private TipsEntity tips;
|
||||
private boolean isOpen;
|
||||
|
||||
public GameDetailBasicInfoAdapter(ArrayList<TagEntity> tags, TipsEntity tips, boolean isOpen, Context context) {
|
||||
super(context);
|
||||
this.tags = tags;
|
||||
this.tips = tips;
|
||||
this.isOpen = isOpen;
|
||||
}
|
||||
|
||||
@Override
|
||||
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
|
||||
View view = mLayoutInflater.inflate(R.layout.gamedetail_plugin_item, parent, false);
|
||||
LinearLayout hintLl = view.findViewById(R.id.gamedetail_ll_hint);
|
||||
if (tips.getTitle() != null) {
|
||||
viewType--;
|
||||
}
|
||||
if (!isOpen) {
|
||||
switch (viewType % LABEL_COLUMN_LIMIT) {
|
||||
case POSITION_LEFT:
|
||||
hintLl.setGravity(Gravity.CENTER_VERTICAL | Gravity.LEFT);
|
||||
break;
|
||||
case POSITION_MIDDLE:
|
||||
hintLl.setGravity(Gravity.CENTER);
|
||||
break;
|
||||
case POSITION_RIGHT:
|
||||
hintLl.setGravity(Gravity.CENTER_VERTICAL | Gravity.RIGHT);
|
||||
}
|
||||
}
|
||||
|
||||
return new GameDetailPluginRvViewHolder(view);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
|
||||
if (holder instanceof GameDetailPluginRvViewHolder) {
|
||||
GameDetailPluginRvViewHolder viewHolder = (GameDetailPluginRvViewHolder) holder;
|
||||
int index;
|
||||
if ((tips.getTitle() != null)) {
|
||||
index = 1;
|
||||
} else {
|
||||
index = 0;
|
||||
}
|
||||
|
||||
if (tips.getTitle() != null && position == 0) {
|
||||
TitleEntity title = tips.getTitle();
|
||||
if (!TextUtils.isEmpty(tips.getIcon())) {
|
||||
viewHolder.hintDv.setVisibility(View.VISIBLE);
|
||||
ImageUtils.displayIcon(viewHolder.hintDv, tips.getIcon());
|
||||
} else {
|
||||
viewHolder.hintDv.setVisibility(View.GONE);
|
||||
}
|
||||
if (!TextUtils.isEmpty(tips.getContent())) {
|
||||
viewHolder.hintContentTv.setVisibility(View.VISIBLE);
|
||||
viewHolder.hintContentTv.setText(tips.getContent());
|
||||
} else {
|
||||
viewHolder.hintContentTv.setVisibility(View.GONE);
|
||||
}
|
||||
viewHolder.hintTv.setText(title.getValue());
|
||||
if (!TextUtils.isEmpty(title.getColor())) {
|
||||
viewHolder.hintTv.setTextColor(Color.parseColor(title.getColor()));
|
||||
}
|
||||
} else {
|
||||
TagEntity tagEntity = tags.get(position - index);
|
||||
if (!TextUtils.isEmpty(tagEntity.getIcon())) {
|
||||
viewHolder.hintDv.setVisibility(View.VISIBLE);
|
||||
ImageUtils.displayIcon(viewHolder.hintDv, tagEntity.getIcon());
|
||||
} else {
|
||||
viewHolder.hintDv.setVisibility(View.GONE);
|
||||
}
|
||||
viewHolder.hintTv.setText(tagEntity.getName());
|
||||
viewHolder.hintTv.setTextColor(Color.parseColor(tagEntity.getColor()));
|
||||
if (isOpen) {
|
||||
viewHolder.hintContentTv.setVisibility(View.VISIBLE);
|
||||
viewHolder.hintContentTv.setText(tagEntity.getDes());
|
||||
} else {
|
||||
viewHolder.hintContentTv.setVisibility(View.GONE);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getItemViewType(int position) {
|
||||
return position;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getItemCount() {
|
||||
if (tips.getTitle() != null) {
|
||||
return tags.size() + 1;
|
||||
}
|
||||
return tags.size();
|
||||
}
|
||||
}
|
||||
@ -11,6 +11,7 @@ import android.text.TextUtils;
|
||||
import android.util.DisplayMetrics;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.LinearLayout;
|
||||
import android.widget.RelativeLayout;
|
||||
import android.widget.TextView;
|
||||
@ -50,6 +51,8 @@ public class KaiFuVpFragment extends BaseFragment {
|
||||
RecyclerView mRecyclerView;
|
||||
@BindView(R.id.kaifu_item_time_tv)
|
||||
TextView mKaifuItemTimeTv;
|
||||
@BindView(R.id.kaifu_item_header)
|
||||
ImageView mKaifuItemHeaderIv;
|
||||
@BindView(R.id.kaifu_item_time)
|
||||
LinearLayout mKaiFuTimeLl;
|
||||
@BindView(R.id.kaifu_pb_loading)
|
||||
@ -143,6 +146,7 @@ public class KaiFuVpFragment extends BaseFragment {
|
||||
|
||||
if (fixedTopHint) {
|
||||
mKaifuItemTimeTv.setText("热门开服");
|
||||
mKaifuItemHeaderIv.setImageResource(R.drawable.ic_kaifu_hot);
|
||||
} else {
|
||||
Long timeHint = timeGameEntity.getKaifuTimeHint();
|
||||
SimpleDateFormat dateFm = new SimpleDateFormat("yyyy-MM-dd (EEEE) HH:mm", Locale.CHINA);
|
||||
@ -150,10 +154,12 @@ public class KaiFuVpFragment extends BaseFragment {
|
||||
KaiFuCalendarEntity serverEntity = timeGameEntity.getServerEntity();
|
||||
if (serverEntity != null) {
|
||||
mKaifuItemTimeTv.setText(dateFm.format(serverEntity.getTime() * 1000));
|
||||
mKaifuItemHeaderIv.setImageResource(R.drawable.kaifu_time_icon);
|
||||
mKaifuItemTimeTv.setTag(serverEntity.getTime());
|
||||
}
|
||||
} else {
|
||||
mKaifuItemTimeTv.setText(dateFm.format(timeHint * 1000));
|
||||
mKaifuItemHeaderIv.setImageResource(R.drawable.kaifu_time_icon);
|
||||
mKaifuItemTimeTv.setTag(timeHint);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user