所以,我想有一个onclicklistener
为我的回收视图
在Android中,但我不知道我应该怎么做。
我有一个CustomAdapterClass
用于我的Workoutlist
,看起来像这样:
class CustomAdapter(val workoutList: ArrayList<workout>) : RecyclerView.Adapter<CustomAdapter.ViewHolder>() {
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): CustomAdapter.ViewHolder {
val v = LayoutInflater.from(parent.context).inflate(R.layout.list_layout, parent, false)
return ViewHolder(v)
}
override fun onBindViewHolder(holder: CustomAdapter.ViewHolder, position: Int) {
holder.bindItems(workoutList[position])
}
override fun getItemCount(): Int {
return workoutList.size
}
class ViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
fun bindItems(workout: workout) {
val cardDate = itemView.findViewById<TextView>(R.id.cardDate)
val cardDescription = itemView.findViewById<TextView>(R.id.cardDescription)
cardDate.text = workout.date
cardDescription.text = workout.description
}
}
}
我把我的锻炼像这样推进(在我的主要活动中
):
val recyclerView = findViewById<RecyclerView>(R.id.RecyclerView)
recyclerView.layoutManager = GridLayoutManager(this, 3)
val workouts = ArrayList<workout>()
workouts.add(workout("12.09.2018", "Kniebeugen und Bizeps + Rücken"))
workouts.add(workout("12.09.2018", "Kniebeugen und Bizeps + Rücken"))
workouts.add(workout("12.09.2018", "Kniebeugen und Bizeps + Rücken"))
workouts.add(workout("12.09.2018", "Kniebeugen und Bizeps + Rücken"))
workouts.add(workout("12.09.2018", "Kniebeugen und Bizeps + Rücken"))
workouts.add(workout("12.09.2018", "Kniebeugen und Bizeps + Rücken"))
workouts.add(workout("12.09.2018", "Kniebeugen und Bizeps + Rücken"))
workouts.add(workout("12.09.2018", "Kniebeugen und Bizeps + Rücken"))
val adapter = CustomAdapter(workouts)
recyclerView.adapter = adapter
我想让我的锻炼可以点击,这样我就可以使用锻炼的名称和描述来打开一个新的活动,并以此为目的。
感谢您的帮助!
我不明白他把分机放在“副本”里的地方
好了,伙计们,我发现了如何在Kotlin中实现onclicklistener,下面是链接:https://gist.github.com/nesquena/231e356f372f214c4fe6
在视窗内使用它
override fun onClick(view: View) {
}
如果你有特定的身份证
@OnClick(R.id.id1, R.id.id2)
fun onClick(view: View) {
when (view.id) {
R.id.id1 -> {}
R.id.id2 -> {}
else ->{}
}
}
>
让我们为这个用例定义一个接口:
interface WorkoutClickLisetner{
fun onWorkoutClicked(workout: workout)
}
将WorkoutClickListener
添加为CustomAdapter
var listener : WorkoutClickListener? = null
在bindItem
方法中注册itemView
的单击侦听器
itemView.listener = object : View.OnClickListener {
override fun onClick(v: View){
listener?.onWorkoutClicked(workout)
}
}
不要忘记初始化您的WorkoutClickListener
,当用户单击单元格时,您将在其中委托操作:
val adapter = CustomAdapter(workouts)
adapter.listener = object : WorkoutClickListener {
override fun onWorkoutClicked(workout: workout){
/*your delegation goes here*/`
}
}
recyclerView.adapter = adapter
是否可以在中的class中添加一个新的静态方法?通常,由于Kotlin Extensions,这样的事情在Kotlin中是可能的。 我已经尝试在一个名为的文件中执行以下操作: 但<code>数学。无法解析同伴。。。
问题内容: 我打算开发一个可在内显示一些动态数据的应用程序。所以我决定 在main中添加一个 。这是我的应用程序代码: 我的主要活动: 它是布局文件: 在这个recyclerView内部还有另一个: 他们的适配器Main(RAdapter): 和第二个适配器: 我的问题是:正如您在CAdapter中看到的那样,仅显示构造函数的Log消息。 更新:如果有另一种方法可以在另一张动态卡中显示某些动态
我有一个JPA(Hibernate)项目,其中包含从XML orm.XML和Beans创建的实体,我有一个EntityManager和update、persist、remove、findById、findAll方法,但我需要添加一个过滤器监听器来检查保存、还原等之前和之后的Beans(我需要将一些值设置为null以返回客户机) 问候。
我想在Java中添加一个按钮侦听器,这样当用户只需按下按钮时,按钮就会被按下。 我尝试将此操作监听器添加到我创建的按钮: 这就是整个功能: 然而,当我的gui出现时,我在输入输入后按“回车”键,什么也没有发生。我必须亲自点击按钮,这正是我试图避免的! 这是我创建的窗口: 我希望用户输入一个数字,然后按enter键,然后单击按钮。帮助我做错了什么?
我正在尝试为我的Kotlin RecyclerView实现一个onClickListener。它根本没有开火。代码没有标记为红色或类似的东西。你在NotesActivity中看到的日志和吐司。我们没有被处决。我的recyclerview本身就在工作,但onClickListener根本不会启动。 NotesAdapter。kt NotesActivity。kt adapter_note_layou
我是一个初学静态编程语言的学生,正在学习一个示例回收人员视图。我开始编码,但没有得到我应该得到的结果,即使在检查和重新检查代码之后也是如此。然后我注意到,即使使用非常基本的代码,它仍然没有按照应有的方式运行。我将包含基本代码,当使用时,它应该显示一个通用列表。我只得到列表中的一项。我怀疑代码以外的其他东西正在影响结果;但是我还没有达到知道的水平。 请看活动内容。xml: 注意它有行。 下面是列表(