feat:【开黑】完成部分UI

This commit is contained in:
max
2024-07-09 20:05:02 +08:00
parent 049006aa8b
commit 5070e21d16
28 changed files with 1005 additions and 4 deletions

View File

@@ -0,0 +1,16 @@
package com.chwl.app.ui.game_team.invite
import android.view.Gravity
import android.view.WindowManager
import com.chwl.app.base.BaseDialog
import com.chwl.app.databinding.GameTeamInviteDialogBinding
class GameTeamInviteDialog : BaseDialog<GameTeamInviteDialogBinding>() {
override var width = WindowManager.LayoutParams.MATCH_PARENT
override var gravity = Gravity.CENTER
override fun init() {
}
}

View File

@@ -0,0 +1,53 @@
package com.chwl.app.ui.game_team.record
import android.widget.TextView
import androidx.fragment.app.Fragment
import com.chwl.app.R
import com.chwl.app.avroom.adapter.CommonVPAdapter
import com.chwl.app.base.BaseViewBindingActivity
import com.chwl.app.databinding.GameTeamRecordActivityBinding
import com.chwl.app.home.adapter.HomeIndicatorAdapter
import com.chwl.app.ui.widget.magicindicator.ViewPagerHelper
import com.chwl.app.ui.widget.magicindicator.buildins.commonnavigator.CommonNavigator
import com.netease.nim.uikit.StatusBarUtil
class GameTeamRecordActivity : BaseViewBindingActivity<GameTeamRecordActivityBinding>() {
override fun init() {
initTab()
}
private fun initTab() {
val fragmentList = ArrayList<Fragment>()
fragmentList.add(GameTeamRecordFragment.newInstance(GameTeamRecordFragment.TYPE_INITIATOR))
fragmentList.add(GameTeamRecordFragment.newInstance(GameTeamRecordFragment.TYPE_RECEIVER))
val titleList = ArrayList<String>()
titleList.add(getString(R.string.game_team_10))
titleList.add(getString(R.string.game_team_11))
val commonNavigator = CommonNavigator(context)
commonNavigator.setTitleWrapContent(false)
val magicIndicatorAdapter = HomeIndicatorAdapter(context, titleList)
magicIndicatorAdapter.setOnItemSelectListener { position: Int, view: TextView? ->
binding.viewPager.currentItem = position
}
commonNavigator.adapter = magicIndicatorAdapter
binding.magicIndicator.navigator = commonNavigator
binding.viewPager.offscreenPageLimit = 2
binding.viewPager.adapter = CommonVPAdapter(
supportFragmentManager,
lifecycle,
fragmentList
)
ViewPagerHelper.bind(binding.magicIndicator, binding.viewPager)
binding.viewPager.isUserInputEnabled = false
}
override fun needSteepStateBar(): Boolean {
return true
}
override fun setStatusBar() {
super.setStatusBar()
StatusBarUtil.transparencyBar(this)
StatusBarUtil.StatusBarLightMode(this)
}
}

View File

@@ -0,0 +1,20 @@
package com.chwl.app.ui.game_team.record
import com.chad.library.adapter.base.BaseQuickAdapter
import com.chad.library.adapter.base.BaseViewHolder
import com.chwl.app.R
class GameTeamRecordAdapter :
BaseQuickAdapter<String, BaseViewHolder>(R.layout.game_team_record_item) {
var showRepurchase: Boolean = true
override fun convert(helper: BaseViewHolder, item: String?) {
helper.setText(R.id.tv_name, "NAME")
helper.setText(R.id.tv_id, "299393")
helper.setText(R.id.tv_game_name, "AAAAAA")
helper.setText(R.id.tv_order_money, "10002")
helper.setText(R.id.tv_order_time, "2013-11-20 12:00:20")
helper.setText(R.id.tv_order_id, "12123212312131231233123131231123129")
}
}

View File

@@ -0,0 +1,42 @@
package com.chwl.app.ui.game_team.record
import android.os.Bundle
import com.chwl.app.R
import com.chwl.app.base.BaseViewBindingFragment
import com.chwl.app.databinding.GameTemaRecordFragmentBinding
import com.netease.nim.uikit.common.ui.recyclerview.decoration.SpacingDecoration
class GameTeamRecordFragment : BaseViewBindingFragment<GameTemaRecordFragmentBinding>() {
companion object {
const val TYPE_INITIATOR = 0
const val TYPE_RECEIVER = 1
fun newInstance(type: Int): GameTeamRecordFragment {
return GameTeamRecordFragment().apply {
arguments = Bundle().apply {
putInt("type", type)
}
}
}
}
private val adapter = GameTeamRecordAdapter()
private var type: Int = TYPE_INITIATOR
override fun init() {
type = arguments?.getInt("type", TYPE_INITIATOR) ?: TYPE_INITIATOR
adapter.showRepurchase = (type == TYPE_INITIATOR)
binding.recyclerView.addItemDecoration(
SpacingDecoration(
0, resources.getDimensionPixelOffset(
R.dimen.dp_16
), false
)
)
binding.recyclerView.adapter = adapter
repeat(20) {
adapter.addData(it.toString())
}
}
}

View File

@@ -0,0 +1,12 @@
package com.chwl.app.ui.user.adapter
import com.chad.library.adapter.base.BaseQuickAdapter
import com.chad.library.adapter.base.BaseViewHolder
import com.chwl.app.R
import com.chwl.core.game_team.GameTeamBean
class UserInfoGameTeamAdapter :
BaseQuickAdapter<GameTeamBean, BaseViewHolder>(R.layout.user_info_item_game_team) {
override fun convert(helper: BaseViewHolder, item: GameTeamBean) {
}
}

View File

@@ -9,22 +9,26 @@ import com.chwl.app.R
import com.chwl.app.base.BaseViewBindingFragment
import com.chwl.app.databinding.UserInfoDataFragmentBinding
import com.chwl.app.support.FragmentVisibleStateHelper
import com.chwl.app.ui.game_team.invite.GameTeamInviteDialog
import com.chwl.app.ui.user.activity.ShowPhotoActivity
import com.chwl.app.ui.user.activity.UserInfoModifyActivity
import com.chwl.app.ui.user.activity.UserModifyPhotosActivity
import com.chwl.app.ui.user.adapter.UserInfoAlbumAdapter
import com.chwl.app.ui.user.adapter.UserInfoGameTeamAdapter
import com.chwl.app.ui.user.adapter.UserInfoGiftAdapter
import com.chwl.app.ui.user.adapter.UserInfoMedalAdapter
import com.chwl.app.ui.user.viewmodel.UserInfoViewModel
import com.chwl.app.ui.widget.recyclerview.decoration.GridSpacingItemNewDecoration
import com.chwl.app.ui.widget.recyclerview.decoration.SpacingDecoration
import com.chwl.core.game_team.GameTeamBean
import com.chwl.core.user.bean.UserPhoto
import com.example.lib_utils.UiUtils
class UserInfoDataFragment : BaseViewBindingFragment<UserInfoDataFragmentBinding>() {
private val viewModel: UserInfoViewModel by activityViewModels()
override fun init() {
initGameTeam()
initAlbum()
initMedal()
initGift()
@@ -36,6 +40,29 @@ class UserInfoDataFragment : BaseViewBindingFragment<UserInfoDataFragmentBinding
}
}
private fun initGameTeam() {
val adapter = UserInfoGameTeamAdapter()
binding.recyclerViewLuckyGift.addItemDecoration(
SpacingDecoration(
0,
resources.getDimensionPixelOffset(R.dimen.dp_10),
false
)
)
binding.recyclerViewGameTeam.adapter = adapter
adapter.setOnItemClickListener { adapter, view, position ->
activity?.let {
GameTeamInviteDialog().safeShow(it.supportFragmentManager, it)
}
}
viewModel.userInfoDetailData.observe(this) {
repeat(2) {
adapter.addData(GameTeamBean())
}
binding.layoutGameTeam.isVisible = true
}
}
private fun initAlbum() {
val albumAdapter = UserInfoAlbumAdapter()
binding.ivAlbumMore.isVisible = viewModel.isMe

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 780 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 360 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 754 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 314 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

View File

@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="13dp" />
<gradient
android:angle="0"
android:endColor="#41D4F6"
android:startColor="#70E9E7" />
</shape>

View File

@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="13dp" />
<gradient
android:angle="0"
android:endColor="#FED118"
android:startColor="#FDB719" />
</shape>

View File

@@ -0,0 +1,236 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/layout_content"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_marginHorizontal="@dimen/dp_38"
app:layout_constraintDimensionRatio="300:280"
app:layout_constraintTop_toBottomOf="@id/iv_close">
<com.chwl.app.view.AutoMirroredImageView
android:id="@+id/iv_bg"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/game_team_invite_bg" />
<TextView
android:id="@+id/tv_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/game_team_06"
android:textColor="#563C1F"
android:textSize="@dimen/dp_20"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.091" />
<com.google.android.material.imageview.ShapeableImageView
android:id="@+id/iv_image"
android:layout_width="0dp"
android:layout_height="0dp"
android:padding="@dimen/dp_1"
android:scaleType="centerCrop"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintDimensionRatio="223:95"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHeight_percent="0.339"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.327"
app:shapeAppearance="@style/shape_corner_10dp"
app:strokeColor="#F09540"
app:strokeWidth="@dimen/dp_2" />
<ImageView
android:id="@+id/iv_count_add"
android:layout_width="0dp"
android:layout_height="0dp"
android:src="@drawable/game_team_invite_ic_add"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintDimensionRatio="1:1"
app:layout_constraintEnd_toEndOf="@id/iv_image"
app:layout_constraintHeight_percent="0.082"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.663" />
<TextView
android:id="@+id/tv_count"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:minWidth="@dimen/dp_30"
android:paddingHorizontal="@dimen/dp_5"
android:text="1"
android:textColor="#471606"
android:textSize="@dimen/dp_13"
app:layout_constraintBottom_toBottomOf="@id/iv_count_add"
app:layout_constraintEnd_toStartOf="@id/iv_count_add"
app:layout_constraintTop_toTopOf="@id/iv_count_add" />
<ImageView
android:id="@+id/iv_count_subtract"
android:layout_width="0dp"
android:layout_height="0dp"
android:src="@drawable/game_team_invite_ic_subtract"
app:layout_constraintBottom_toBottomOf="@id/iv_count_add"
app:layout_constraintDimensionRatio="1:1"
app:layout_constraintEnd_toStartOf="@id/tv_count"
app:layout_constraintTop_toTopOf="@id/iv_count_add" />
<TextView
android:id="@+id/tv_count_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/game_team_07"
android:textColor="#3F3C33"
android:textSize="@dimen/dp_14"
app:layout_constraintBottom_toBottomOf="@id/iv_count_add"
app:layout_constraintStart_toStartOf="@id/iv_image"
app:layout_constraintTop_toTopOf="@id/iv_count_add" />
<ImageView
android:id="@+id/iv_money"
android:layout_width="0dp"
android:layout_height="0dp"
android:src="@drawable/icon_diamond"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintDimensionRatio="1:1"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHeight_percent="0.042"
app:layout_constraintHorizontal_bias="0.81"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.768" />
<TextView
android:id="@+id/tv_money"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="@dimen/dp_2"
android:text="0"
android:textColor="#491609"
android:textSize="@dimen/dp_17"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="@id/iv_money"
app:layout_constraintEnd_toStartOf="@id/iv_money"
app:layout_constraintTop_toTopOf="@id/iv_money" />
<TextView
android:id="@+id/tv_money_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/game_team_08"
android:textColor="#3F3C33"
android:textSize="@dimen/dp_14"
app:layout_constraintBottom_toBottomOf="@id/iv_money"
app:layout_constraintStart_toStartOf="@id/iv_image"
app:layout_constraintTop_toTopOf="@id/iv_money" />
<View
android:layout_width="0dp"
android:layout_height="@dimen/dp_0_5"
android:background="#33442A11"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="@id/iv_image"
app:layout_constraintStart_toStartOf="@id/iv_image"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.835" />
<TextView
android:id="@+id/tv_pay"
android:layout_width="0dp"
android:layout_height="0dp"
android:background="@drawable/base_shape_theme_13dp"
android:gravity="center"
android:maxLines="1"
android:text="@string/pay"
android:textColor="@color/white"
android:textSize="@dimen/dp_13"
app:autoSizeMaxTextSize="@dimen/dp_13"
app:autoSizeMinTextSize="@dimen/dp_8"
app:autoSizeStepGranularity="1px"
app:autoSizeTextType="uniform"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintDimensionRatio="65:26"
app:layout_constraintEnd_toEndOf="@id/iv_image"
app:layout_constraintHeight_percent="0.092"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.948" />
<TextView
android:id="@+id/tv_balance"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ellipsize="end"
android:maxLines="1"
android:text="@string/gift_wallet_overage"
android:textColor="#3F3C33"
android:textSize="@dimen/dp_12"
app:layout_constraintBottom_toBottomOf="@id/layout_recharge"
app:layout_constraintEnd_toStartOf="@id/layout_recharge"
app:layout_constraintHorizontal_bias="0"
app:layout_constraintHorizontal_chainStyle="packed"
app:layout_constraintStart_toStartOf="@id/iv_image"
app:layout_constraintTop_toTopOf="@id/layout_recharge"
app:layout_constraintWidth_default="wrap" />
<LinearLayout
android:id="@+id/layout_recharge"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="@dimen/dp_3"
android:gravity="center_vertical"
app:layout_constraintBottom_toBottomOf="@id/tv_pay"
app:layout_constraintEnd_toStartOf="@id/tv_pay"
app:layout_constraintStart_toEndOf="@id/tv_balance"
app:layout_constraintTop_toTopOf="@id/tv_pay"
app:layout_constraintVertical_bias="0.6">
<ImageView
android:id="@+id/iv_balance"
android:layout_width="@dimen/dp_10"
android:layout_height="@dimen/dp_10"
android:layout_marginStart="@dimen/dp_1_5"
android:src="@drawable/icon_diamond" />
<TextView
android:id="@id/tv_recharge"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_8"
android:layout_marginEnd="@dimen/dp_3"
android:text="@string/charge"
android:textColor="#FF433A"
android:textSize="@dimen/dp_12" />
<com.chwl.app.view.AutoMirroredImageView
android:id="@+id/iv_recharge"
android:layout_width="@dimen/dp_4_5"
android:layout_height="wrap_content"
android:scaleType="fitCenter"
android:src="@drawable/game_team_invite_ic_recharge_arrow" />
</LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
<ImageView
android:id="@+id/iv_close"
android:layout_width="@dimen/dp_26"
android:layout_height="@dimen/dp_26"
android:layout_marginStart="-1dp"
android:scaleType="fitCenter"
android:src="@drawable/game_team_invite_ic_close"
app:layout_constraintStart_toEndOf="@id/layout_content"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -0,0 +1,37 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/white">
<FrameLayout
android:id="@+id/layout_title_bar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#EBECF3"
android:paddingTop="@dimen/dp_30"
app:layout_constraintTop_toTopOf="parent">
<com.chwl.app.base.TitleBar
android:id="@+id/title_bar"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</FrameLayout>
<com.chwl.app.ui.widget.magicindicator.MagicIndicator
android:id="@+id/magic_indicator"
android:layout_width="wrap_content"
android:layout_height="@dimen/dp_40"
android:layout_marginTop="@dimen/dp_6"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/layout_title_bar" />
<androidx.viewpager2.widget.ViewPager2
android:id="@+id/view_pager"
android:layout_width="match_parent"
android:layout_height="0dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintTop_toBottomOf="@id/magic_indicator" />
</androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -0,0 +1,234 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<com.google.android.material.imageview.ShapeableImageView
android:id="@+id/iv_icon"
android:layout_width="@dimen/dp_60"
android:layout_height="@dimen/dp_60"
android:layout_marginStart="@dimen/dp_22"
android:layout_marginTop="@dimen/dp_12"
android:scaleType="centerCrop"
android:src="@drawable/default_cover"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:shapeAppearance="@style/shape_corner_10dp" />
<TextView
android:id="@+id/tv_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_12"
android:layout_marginBottom="@dimen/dp_6"
android:textColor="#242335"
android:textSize="@dimen/dp_14"
app:layout_constraintBottom_toTopOf="@id/tv_id"
app:layout_constraintStart_toEndOf="@id/iv_icon"
app:layout_constraintTop_toTopOf="@id/iv_icon"
app:layout_constraintVertical_chainStyle="packed"
tools:text="Name" />
<TextView
android:id="@+id/tv_id"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#666666"
android:textSize="@dimen/dp_12"
app:layout_constraintBottom_toBottomOf="@id/iv_icon"
app:layout_constraintStart_toStartOf="@id/tv_name"
app:layout_constraintTop_toBottomOf="@id/tv_name"
tools:text="1000" />
<View
android:id="@+id/v_line_top"
android:layout_width="match_parent"
android:layout_height="@dimen/dp_0_5"
android:layout_marginStart="@dimen/dp_13"
android:layout_marginTop="@dimen/dp_14"
android:layout_marginEnd="@dimen/dp_15"
android:background="#F4F4F4"
app:layout_constraintTop_toBottomOf="@id/iv_icon" />
<TextView
android:id="@+id/tv_game_name_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_24"
android:layout_marginTop="@dimen/dp_10"
android:text="@string/game_team_12"
android:textColor="#242335"
android:textSize="@dimen/dp_14"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/v_line_top" />
<TextView
android:id="@+id/tv_order_money_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_13"
android:text="@string/game_team_13"
android:textColor="#242335"
android:textSize="@dimen/dp_14"
app:layout_constraintStart_toStartOf="@id/tv_game_name_title"
app:layout_constraintTop_toBottomOf="@id/tv_game_name_title" />
<TextView
android:id="@+id/tv_order_time_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_13"
android:text="@string/game_team_14"
android:textColor="#242335"
android:textSize="@dimen/dp_14"
app:layout_constraintStart_toStartOf="@id/tv_game_name_title"
app:layout_constraintTop_toBottomOf="@id/tv_order_money_title" />
<TextView
android:id="@+id/tv_order_id_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_13"
android:text="@string/game_team_12"
android:textColor="#242335"
android:textSize="@dimen/dp_15"
app:layout_constraintStart_toStartOf="@id/tv_game_name_title"
app:layout_constraintTop_toBottomOf="@id/tv_order_time_title" />
<androidx.constraintlayout.widget.Barrier
android:id="@+id/barrier_title_end"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:barrierDirection="end"
app:constraint_referenced_ids="tv_game_name_title,tv_order_time_title,tv_order_id_title,tv_order_money_title" />
<TextView
android:id="@+id/tv_game_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_8"
android:textColor="#242335"
android:textSize="@dimen/dp_14"
app:layout_constraintBaseline_toBaselineOf="@id/tv_game_name_title"
app:layout_constraintStart_toEndOf="@id/tv_game_name_title"
tools:text="Name" />
<TextView
android:id="@+id/tv_order_money"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:maxLines="1"
android:textColor="#242335"
android:textSize="@dimen/dp_14"
app:autoSizeMaxTextSize="@dimen/dp_14"
app:autoSizeMinTextSize="@dimen/dp_8"
app:autoSizeStepGranularity="1px"
app:autoSizeTextType="uniform"
app:layout_constraintBaseline_toBaselineOf="@id/tv_order_money_title"
app:layout_constraintEnd_toStartOf="@id/iv_order_money"
app:layout_constraintHorizontal_bias="0"
app:layout_constraintHorizontal_chainStyle="packed"
app:layout_constraintStart_toStartOf="@id/tv_game_name"
app:layout_constraintWidth_default="wrap"
tools:text="1000" />
<TextView
android:id="@+id/tv_order_time"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#242335"
android:textSize="@dimen/dp_14"
app:layout_constraintBaseline_toBaselineOf="@id/tv_order_time_title"
app:layout_constraintStart_toStartOf="@id/tv_game_name"
tools:text="2024-10-22 12:22:34" />
<TextView
android:id="@+id/tv_order_id"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:maxLines="1"
android:textColor="#242335"
android:textSize="@dimen/dp_14"
app:autoSizeMaxTextSize="@dimen/dp_14"
app:autoSizeMinTextSize="@dimen/dp_8"
app:autoSizeStepGranularity="1px"
app:autoSizeTextType="uniform"
app:layout_constraintBaseline_toBaselineOf="@id/tv_order_id_title"
app:layout_constraintEnd_toStartOf="@id/iv_order_id_copy"
app:layout_constraintHorizontal_bias="0"
app:layout_constraintHorizontal_chainStyle="packed"
app:layout_constraintStart_toStartOf="@id/tv_game_name"
app:layout_constraintWidth_default="wrap"
tools:text="1231231231231" />
<ImageView
android:id="@+id/iv_order_money"
android:layout_width="@dimen/dp_12"
android:layout_height="@dimen/dp_12"
android:layout_marginStart="@dimen/dp_2"
android:src="@drawable/icon_diamond"
app:layout_constraintBottom_toBottomOf="@id/tv_order_money"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@id/tv_order_money"
app:layout_constraintTop_toTopOf="@id/tv_order_money" />
<ImageView
android:id="@+id/iv_order_id_copy"
android:layout_width="@dimen/dp_23"
android:layout_height="@dimen/dp_23"
android:layout_marginEnd="@dimen/dp_5"
android:scaleType="centerInside"
android:src="@drawable/game_team_record_ic_copy"
app:layout_constraintBottom_toBottomOf="@id/tv_order_id"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@id/tv_order_id"
app:layout_constraintTop_toTopOf="@id/tv_order_id" />
<View
android:id="@+id/v_line_bottom"
android:layout_width="0dp"
android:layout_height="@dimen/dp_0_5"
android:layout_marginTop="@dimen/dp_10"
android:background="#F4F4F4"
app:layout_constraintEnd_toEndOf="@id/v_line_top"
app:layout_constraintStart_toStartOf="@id/v_line_top"
app:layout_constraintTop_toBottomOf="@id/tv_order_id_title" />
<TextView
android:id="@+id/tv_chat"
android:layout_width="wrap_content"
android:layout_height="@dimen/dp_26"
android:layout_marginTop="@dimen/dp_10"
android:layout_marginEnd="@dimen/dp_28"
android:layout_marginBottom="@dimen/dp_13"
android:background="@drawable/shape_g_70e9e7_41d4f6_13_lr"
android:gravity="center"
android:minWidth="@dimen/dp_65"
android:paddingHorizontal="@dimen/dp_5"
android:text="@string/send_msg"
android:textColor="@color/color_white"
android:textSize="@dimen/dp_13"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@id/v_line_bottom" />
<TextView
android:id="@+id/tv_repurchase"
android:layout_width="wrap_content"
android:layout_height="@dimen/dp_26"
android:layout_marginEnd="@dimen/dp_15"
android:background="@drawable/shape_g_fed118_fdb719_13_lr"
android:gravity="center"
android:minWidth="@dimen/dp_65"
android:paddingHorizontal="@dimen/dp_5"
android:text="@string/game_team_16"
android:textColor="@color/color_white"
android:textSize="@dimen/dp_13"
app:layout_constraintBottom_toBottomOf="@id/tv_chat"
app:layout_constraintEnd_toStartOf="@id/tv_chat"
app:layout_constraintTop_toTopOf="@id/tv_chat" />
</androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -0,0 +1,26 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.swiperefreshlayout.widget.SwipeRefreshLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/swipe_refresh"
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.chwl.app.common.widget.StatusLayout
android:id="@+id/status_layout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recycler_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager"
tools:listitem="@layout/game_team_record_item">
</androidx.recyclerview.widget.RecyclerView>
</com.chwl.app.common.widget.StatusLayout>
</androidx.swiperefreshlayout.widget.SwipeRefreshLayout>

View File

@@ -12,11 +12,48 @@
android:layout_height="match_parent"
android:orientation="vertical">
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/layout_game_team"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="@dimen/dp_20"
android:visibility="gone"
tools:visibility="visible">
<TextView
android:id="@+id/tv_game_team_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_15"
android:text="@string/game_team_01"
android:textColor="#191919"
android:textSize="@dimen/dp_16"
android:textStyle="bold"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recycler_view_game_team"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_10"
android:clipToPadding="false"
android:nestedScrollingEnabled="false"
android:orientation="vertical"
android:overScrollMode="never"
app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager"
app:layout_constraintTop_toBottomOf="@id/tv_game_team_title"
app:spanCount="2"
tools:background="#33000000"
tools:listitem="@layout/user_info_item_game_team" />
</androidx.constraintlayout.widget.ConstraintLayout>
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/layout_album"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="@dimen/dp_21">
android:layout_marginTop="@dimen/dp_20">
<TextView
android:id="@+id/tv_album_title"

View File

@@ -0,0 +1,160 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="@dimen/dp_14">
<com.chwl.app.view.AutoMirroredImageView
android:id="@+id/iv_bg"
android:layout_width="match_parent"
android:layout_height="0dp"
android:scaleType="centerCrop"
app:layout_constraintDimensionRatio="347:68"
app:layout_constraintTop_toTopOf="parent"
tools:background="#cc000000" />
<com.google.android.material.imageview.ShapeableImageView
android:id="@+id/iv_icon"
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_marginStart="@dimen/dp_10"
android:scaleType="centerCrop"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintDimensionRatio="1:1"
app:layout_constraintHeight_percent="0.735"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:shapeAppearance="@style/shape_corner_10dp"
tools:src="@drawable/default_cover" />
<TextView
android:id="@+id/tv_name_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_12"
android:text="@string/game_team_02"
android:textColor="#CCFFFFFF"
android:textSize="@dimen/dp_13"
app:layout_constraintBottom_toTopOf="@id/tv_level_title"
app:layout_constraintStart_toEndOf="@id/iv_icon"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_chainStyle="spread" />
<TextView
android:id="@+id/tv_level_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/game_team_03"
android:textColor="#CCFFFFFF"
android:textSize="@dimen/dp_13"
app:layout_constraintBottom_toTopOf="@id/tv_price_title"
app:layout_constraintStart_toStartOf="@id/tv_name_title"
app:layout_constraintTop_toBottomOf="@id/tv_name_title" />
<TextView
android:id="@+id/tv_price_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/game_team_02"
android:textColor="#CCFFFFFF"
android:textSize="@dimen/dp_13"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="@id/tv_name_title"
app:layout_constraintTop_toBottomOf="@id/tv_level_title" />
<androidx.constraintlayout.widget.Barrier
android:id="@+id/barrier_title_end"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:barrierDirection="end"
app:constraint_referenced_ids="tv_name_title,tv_level_title,tv_price_title" />
<TextView
android:id="@+id/tv_name"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_20"
android:layout_marginEnd="@dimen/dp_2"
android:ellipsize="end"
android:maxLines="1"
android:textColor="#FFFFFF"
android:textSize="@dimen/dp_13"
app:autoSizeMaxTextSize="@dimen/dp_13"
app:autoSizeMinTextSize="@dimen/dp_8"
app:autoSizeStepGranularity="1px"
app:autoSizeTextType="uniform"
app:layout_constraintBottom_toTopOf="@id/tv_level_title"
app:layout_constraintEnd_toStartOf="@id/layout_play"
app:layout_constraintStart_toEndOf="@id/barrier_title_end"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_chainStyle="spread"
tools:text="LOL" />
<TextView
android:id="@+id/tv_level"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:ellipsize="end"
android:maxLines="1"
android:textColor="#FFFFFF"
android:textSize="@dimen/dp_13"
app:autoSizeMaxTextSize="@dimen/dp_13"
app:autoSizeMinTextSize="@dimen/dp_8"
app:autoSizeStepGranularity="1px"
app:autoSizeTextType="uniform"
app:layout_constraintBottom_toTopOf="@id/tv_price"
app:layout_constraintEnd_toEndOf="@id/tv_name"
app:layout_constraintStart_toStartOf="@id/tv_name"
app:layout_constraintTop_toBottomOf="@id/tv_name"
tools:text="MAX" />
<TextView
android:id="@+id/tv_price"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:ellipsize="end"
android:maxLines="1"
android:textColor="#FFFFFF"
android:textSize="@dimen/dp_13"
app:autoSizeMaxTextSize="@dimen/dp_13"
app:autoSizeMinTextSize="@dimen/dp_8"
app:autoSizeStepGranularity="1px"
app:autoSizeTextType="uniform"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="@id/tv_name"
app:layout_constraintStart_toStartOf="@id/tv_name"
app:layout_constraintTop_toBottomOf="@id/tv_level"
tools:text="100" />
<LinearLayout
android:id="@+id/layout_play"
android:layout_width="wrap_content"
android:layout_height="@dimen/dp_27"
android:layout_marginEnd="@dimen/dp_12"
android:background="@drawable/base_shape_66ffffff_13o5dp"
android:gravity="center"
android:paddingHorizontal="@dimen/dp_14"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent">
<ImageView
android:layout_width="@dimen/dp_15"
android:layout_height="@dimen/dp_17"
android:scaleType="fitCenter"
android:src="@drawable/user_info_game_team_ic_play" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_3"
android:text="@string/game_team_05"
android:textColor="@color/color_white"
android:textSize="@dimen/dp_13" />
</LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -5322,5 +5322,22 @@
<string name="feedback_contact_title">وسيلة تواصل</string>
<string name="feedback_content_hint">من فضلك ادخل</string>
<string name="feedback_contact_hint"> رقم الهاتف او البريد الالكتروني</string>
<string name="game_team_01">組隊開黑</string>
<string name="game_team_02">遊戲名稱</string>
<string name="game_team_03">熟練度</string>
<string name="game_team_04">下單價格</string>
<string name="game_team_05">下單</string>
<string name="game_team_06">開黑邀請</string>
<string name="game_team_07">開黑局數:</string>
<string name="game_team_08">合計:</string>
<string name="game_team_09">點單記錄</string>
<string name="game_team_10">我發起的</string>
<string name="game_team_11">我接收的</string>
<string name="game_team_12">遊戲名稱:</string>
<string name="game_team_13">消費金額:</string>
<string name="game_team_14">下單時間:</string>
<string name="game_team_15">訂單編號:</string>
<string name="game_team_16">再次支付</string>
<string name="game_team_17">和我一起玩遊戲吧~</string>
<string name="game_team_18">%s局</string>
</resources>

View File

@@ -5262,4 +5262,24 @@
<string name="feedback_contact_title">聯係方式</string>
<string name="feedback_content_hint">請輸入…</string>
<string name="feedback_contact_hint">手機號或郵箱</string>
<string name="game_team_01">組隊開黑</string>
<string name="game_team_02">遊戲名稱</string>
<string name="game_team_03">熟練度</string>
<string name="game_team_04">下單價格</string>
<string name="game_team_05">下單</string>
<string name="game_team_06">開黑邀請</string>
<string name="game_team_07">開黑局數:</string>
<string name="game_team_08">合計:</string>
<string name="game_team_09">點單記錄</string>
<string name="game_team_10">我發起的</string>
<string name="game_team_11">我接收的</string>
<string name="game_team_12">遊戲名稱:</string>
<string name="game_team_13">消費金額:</string>
<string name="game_team_14">下單時間:</string>
<string name="game_team_15">訂單編號:</string>
<string name="game_team_16">再次支付</string>
<string name="game_team_17">和我一起玩遊戲吧~</string>
<string name="game_team_18">%s局</string>
</resources>

View File

@@ -5303,7 +5303,24 @@ You cannot join again within 24 hours after leaving</string>
<string name="feedback_content_hint">Please enter...</string>
<string name="feedback_contact_hint">Mobile phone number or email</string>
<string name="game_team_01">組隊開黑</string>
<string name="game_team_02">遊戲名稱</string>
<string name="game_team_03">熟練度</string>
<string name="game_team_04">下單價格</string>
<string name="game_team_05">下單</string>
<string name="game_team_06">開黑邀請</string>
<string name="game_team_07">開黑局數:</string>
<string name="game_team_08">合計:</string>
<string name="game_team_09">點單記錄</string>
<string name="game_team_10">我發起的</string>
<string name="game_team_11">我接收的</string>
<string name="game_team_12">遊戲名稱:</string>
<string name="game_team_13">消費金額:</string>
<string name="game_team_14">下單時間:</string>
<string name="game_team_15">訂單編號:</string>
<string name="game_team_16">再次支付</string>
<string name="game_team_17">和我一起玩遊戲吧~</string>
<string name="game_team_18">%s局</string>
</resources>

View File

@@ -624,8 +624,18 @@
<item name="cornerSize">@dimen/dp_8</item>
</style>
<style name="shape_corner_10dp">
<item name="cornerFamily">rounded</item>
<item name="cornerSize">@dimen/dp_10</item>
</style>
<style name="shape_corner_12dp">
<item name="cornerFamily">rounded</item>
<item name="cornerSize">@dimen/dp_12</item>
</style>
<style name="shape_corner_17dp">
<item name="cornerFamily">rounded</item>
<item name="cornerSize">@dimen/dp_17</item>
</style>
</resources>

View File

@@ -0,0 +1,7 @@
package com.chwl.core.game_team
import androidx.annotation.Keep
@Keep
class GameTeamBean {
}

View File

@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="#66FFFFFF" />
<corners android:radius="13.5dp" />
</shape>

View File

@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient android:startColor="#57E193" android:endColor="#14D2A6"/>
<corners android:radius="13dp" />
</shape>