From f496392b24eb9c9a38498cbbf03159ef5aa037d1 Mon Sep 17 00:00:00 2001 From: tj <1378534974@qq.com> Date: 星期一, 21 四月 2025 15:38:08 +0800 Subject: [PATCH] 1.好友邀请-我的邀请记录:列表样式重写,图片显示 2.已登录的用户点击应用图标之后直接登录 --- app/src/main/java/com/example/firstapp/ui/invitation/InvitationActivity.kt | 49 ++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 40 insertions(+), 9 deletions(-) diff --git a/app/src/main/java/com/example/firstapp/ui/invitation/InvitationActivity.kt b/app/src/main/java/com/example/firstapp/ui/invitation/InvitationActivity.kt index efb0e6c..9fb0021 100644 --- a/app/src/main/java/com/example/firstapp/ui/invitation/InvitationActivity.kt +++ b/app/src/main/java/com/example/firstapp/ui/invitation/InvitationActivity.kt @@ -19,6 +19,7 @@ import android.view.ViewGroup import android.widget.Button import android.widget.ImageView +import android.widget.LinearLayout import android.widget.TextView import android.widget.Toast import androidx.appcompat.app.AppCompatActivity @@ -31,6 +32,7 @@ import com.example.firstapp.App.Companion.context import com.example.firstapp.R import com.example.firstapp.adapter.InvitationAdapter +import com.example.firstapp.adapter.InvitationRecord2Adapter import com.example.firstapp.adapter.InvitationRecordAdapter import com.example.firstapp.database.request.SmsLoginRequest import com.example.firstapp.database.service.RetrofitClient @@ -49,7 +51,7 @@ private lateinit var recyclerSuccessView: RecyclerView private lateinit var recyclerRecordView: RecyclerView private lateinit var adapter: InvitationAdapter - private lateinit var recordadapter: InvitationRecordAdapter +// private lateinit var recordadapter: InvitationRecordAdapter private var data = mutableListOf<InvitationRecord>() private var recorddata = mutableListOf<InvitationRecord>() private val handler = Handler(Looper.getMainLooper()) @@ -57,6 +59,11 @@ private var currentScrollPosition = 0 private var currentRecordScrollPosition = 0 private var itemHeight = 0 // 动态存储item高度 + + private lateinit var invitedRecordRecyclerView2: RecyclerView + private lateinit var invitationAdapter: InvitationRecord2Adapter + + override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) @@ -68,7 +75,7 @@ //初始化Adapter initSuccessAdapter() - initRecorddapter() +// initRecorddapter() //加载数据 getInvitereward() @@ -94,6 +101,8 @@ clipboard.setPrimaryClip(clip) Toast.makeText(this, "已复制邀请码", Toast.LENGTH_SHORT).show() } + + } @@ -142,8 +151,8 @@ } } // 记录列表 - recyclerRecordView = findViewById(R.id.invitationrecordRecyclerView) - recyclerRecordView.layoutManager = LinearLayoutManager(this) +// recyclerRecordView = findViewById(R.id.invitationrecordRecyclerView) +// recyclerRecordView.layoutManager = LinearLayoutManager(this) } private fun initSuccessAdapter() { @@ -162,10 +171,25 @@ recyclerSuccessView.adapter = adapter } - private fun initRecorddapter() { - recordadapter = InvitationRecordAdapter(this, recorddata) - recyclerRecordView.adapter = recordadapter - } +// private fun initRecorddapter() { +// recordadapter = InvitationRecordAdapter(this, recorddata) +// recyclerRecordView.adapter = recordadapter +// } +// private fun initRecorddapter() { +// recordadapter = InvitationRecordAdapter(this, recorddata).apply { +// registerAdapterDataObserver(object : RecyclerView.AdapterDataObserver() { +// override fun onItemRangeInserted(positionStart: Int, itemCount: Int) { +// // 数据插入时检查高度 +// recyclerRecordView.post { +// if (recyclerRecordView.childCount > 0) { +// itemHeight = recyclerRecordView.getChildAt(0).height +// } +// } +// } +// }) +// } +// recyclerRecordView.adapter = recordadapter +// } private fun getInvitereward() { lifecycleScope.launch { @@ -184,10 +208,17 @@ addAll(records.myInvite ?: emptyList()) // 注意这里使用myInvite } + // 加载适配器 + invitedRecordRecyclerView2 = findViewById(R.id.invited_record_recycler_view_2) + invitedRecordRecyclerView2.layoutManager = LinearLayoutManager(this@InvitationActivity) + invitationAdapter = InvitationRecord2Adapter(records.myInvite) + invitedRecordRecyclerView2.adapter = invitationAdapter + + // 在UI线程更新适配器 withContext(Dispatchers.Main) { adapter.notifyDataSetChanged() - recordadapter.notifyDataSetChanged() +// recordadapter.notifyDataSetChanged() } } ?: run { Log.w("API", "Response data is null") -- Gitblit v1.9.3