为什么Android的OnClickListeners由View界面封装?

时间:2012-02-01 07:32:57

标签: android interface encapsulation

我是android的新手(以及一般的编程),我想知道为什么OnClickListener接口在View下。例如,我可能会设置一个按钮,当您单击按钮时,我会显示一个Toast消息。为什么onclicklistener需要知道关于视图的任何信息?

所以我理解回调是什么,以及为什么要使OnClickListener接口成为开发人员实现的东西。它可以重复使用。但也许我真的不明白封装?或者我可能完全忽略了接口和回调的问题?

这是一个概念性的问题,我非常感谢任何解释这个概念的解释以及简单/简短的示例代码来解释。

谢谢!

2 个答案:

答案 0 :(得分:4)

我们使用的主要视图是View类的子类。 See this

Android在View类中定义了许多接口来处理一些事件,这些事件对于任何视图类型(Button,TextView等)都是通用的。使API简单并为程序员提供更简单的方法。这实际上是OOPS中的继承概念。

如果您有任何疑问,请参阅Android开发者网站,您将获得完整的详细信息。

答案 1 :(得分:2)

View是所有小部件的超类,如Button,TextView,EditText等。

在点击事件中,我们应该知道调用哪些小部件,这就是我们需要View作为参数的原因。 如果我们有多个视图,那么我们可以通过它识别id。