Kotlin基础:RatingBar,侦听器

问题描述

几周前,我开始学习Kotlin,我需要帮助来了解基本知识。

  1. 什么是听众?例如,ratingBar的侦听器是什么?如何找到其他小部件的侦听器?

  2. 有哪些参数?同样,ratingBar的参数是什么?如何找到其他小部件的参数?

  3. 什么是View .____?

解决方法

如果您正在编写处理某种事件的组件,则可能需要一种方法来通知其他组件有关这些事件的信息。有很多方法可以做到这一点(从软件设计的角度来看),其中之一就是 listener 的想法。

基本思想是组件可以将自己注册为侦听器,并且当发生相关事件时,它们将获得回调。生成事件的组件不需要知道这些侦听器是什么,只需要保留对一个(或多个)引用,并在事件发生时调用一些回调函数即可。这里的关键是该组件没有监听器,您必须提供它们。您正在连接组件。


因此,一种典型的实现方法是让组件实现一个回调接口,该接口基本上说“我有一个带有这些参数的函数”,事件组件可以在事件发生时使用详细信息调用该函数。 。您还可以创建一个实现该接口的对象,或者在Kotlin的情况下,您可以仅传递一个与回调函数的签名匹配的函数-基本上提供一段代码,指出“事件发生时,执行此操作作为响应”。通常,这就是您定义行为的方式,例如设置一个单击式侦听器-编写代码块,以便在用户单击事物时以及事件发生时执行该代码。


我希望通常来说是有道理的-如果其中的任何一个令人困惑(因为您是新手),我建议您阅读Java Tutorials(Kotlin所基于的)中的基本路径以获取接口的句柄等等。

对于其他问题...如果您在构造RatingBar或其他内容时询问参数是什么,最好的外观是documentation(尽管通常您不会这样做)无论如何都无法在代码中构造View,只需将它们添加到布局XML文件中即可)-Android Studio也应该弹出一些提示(您可以按ctrl + q来获取有关光标当前位于上方的内容的文档,或者ctrl + p作为参数提示。

如果您要问View是什么,它是Android UI组件的基类,它实际上是任何能够绘制自身并包含在布局中的东西。它具有很多方法,因为它内置了许多功能来处理所有这些UI职责。

如果您要问View.something是什么,那是在View类上定义的静态方法或字段-如果您不知道这是什么意思,请阅读我随附的Java教程链接!通常,您将引用诸如View.VISIBLE之类的东西,这是您为View's setVisibility方法提供的设置值-它知道这些值的含义以及对它们的处理方式

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...