如何在回收器视图(Kotlin)的末端添加按钮?
我要在回收器视图的末端添加一个按钮 我不知道该怎么做。 如果你教我,我会感谢你的。
这是我的主要活动代码:
class MainActivity : AppCompatActivity() {
private var number: Int = 0
private lateinit var name: String
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val myRecyclerView = findViewById<RecyclerView>(R.id.recyclerView)
val myViewModel = ViewModel()
myRecyclerView.layoutManager = LinearLayoutManager(this)
myViewModel.getUserData()
myViewModel.myList.observe(this) {
myRecyclerView.adapter = MyAdapter(it)
}
}
这是我的适配器代码:
class MyAdapter(private val myList: List<Player>) : RecyclerView.Adapter<MyHolder>() {
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): MyHolder {
val myLayoutInflater = LayoutInflater.from(parent.context)
val myView = myLayoutInflater.inflate(R.layout.view_for_rv, parent, false)
return MyHolder(myView)
}
override fun onBindViewHolder(holder: MyHolder, position: Int) {
val item = myList[position]
holder.bind(item)
}
override fun getItemCount(): Int {
return myList.size
}
和我的持有人类:
class MyHolder(view: View) : RecyclerView.ViewHolder(view) {
private val playerNumber = view.findViewById<TextView>(R.id.tvNumber)
private val playerName = view.findViewById<TextView>(R.id.tvName)
fun bind(item : Player){
playerName.text=item.name
playerNumber.text=item.number.toString()
}
I'm gonna add a button at the end of my recycler view
and i don't know how to do it .
i will appreciate you if you teach me .
this is my main activity code :
class MainActivity : AppCompatActivity() {
private var number: Int = 0
private lateinit var name: String
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val myRecyclerView = findViewById<RecyclerView>(R.id.recyclerView)
val myViewModel = ViewModel()
myRecyclerView.layoutManager = LinearLayoutManager(this)
myViewModel.getUserData()
myViewModel.myList.observe(this) {
myRecyclerView.adapter = MyAdapter(it)
}
}
and this is my adapter code :
class MyAdapter(private val myList: List<Player>) : RecyclerView.Adapter<MyHolder>() {
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): MyHolder {
val myLayoutInflater = LayoutInflater.from(parent.context)
val myView = myLayoutInflater.inflate(R.layout.view_for_rv, parent, false)
return MyHolder(myView)
}
override fun onBindViewHolder(holder: MyHolder, position: Int) {
val item = myList[position]
holder.bind(item)
}
override fun getItemCount(): Int {
return myList.size
}
and my holder class :
class MyHolder(view: View) : RecyclerView.ViewHolder(view) {
private val playerNumber = view.findViewById<TextView>(R.id.tvNumber)
private val playerName = view.findViewById<TextView>(R.id.tvName)
fun bind(item : Player){
playerName.text=item.name
playerNumber.text=item.number.toString()
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您将通过在父
nestedscrollview
中添加recyclerview
来实现这一目标,然后将button
放在recyclerview
下方。因此您的代码应该看起来像此
注释
You will achieve this by adding the
RecyclerView
in a parentNestedScrollView
and then place theButton
below theRecyclerView
.So your code should look like this
NOTE
添加新项目类型是很好的选择。
add a new itemType is good selection。
您可以使用
这是一个通用适配器类,可以在简单适配器的所有项目实例中使用。您只需添加一个项目并将其传递给通用类即可创建您的列表。
如何用户
首先,您必须将此课程添加到您的项目中。
之后,您的项目(VH)必须像这样继承此类
,最后将项目附加到适配器
You can use this
This is a Generic adapter class you can use in all project instances of a simple adapter. you just add an item and pass to the generic class to create your list.
How to User
First of all, you must add this class to your project.
after that, your item (VH), must inheritance this class like this
and finally, append an item to the adapter