无法理解View视图参数

时间:2014-08-06 12:30:02

标签: java android android-view

我正在从Android Developers

学习android开发
/** Called when the user clicks the Send button */
public void sendMessage(View view) {
// Do something in response to button
}

sendMessage消息方法包含一个参数'View view'?什么是View对象,它有什么作用?

为什么它作为参数传递给方法,它来自哪里?

6 个答案:

答案 0 :(得分:5)

在编写click事件时,您可能需要知道单击了哪个对象。 在Android中,大多数UI组件都将扩展View Class。

所以你在这里获得实例

public void sendMessage(View view) {
// Do something in response to button
}

在android中我们可以通过两种方式处理点击事件

第一种方式

在xml中提供方法。例如

android:onClick="sendMessage" 

这就是他提供的例子中的情况。

第二种方式

我们可以在onClickListenerActivity中扩展Fragment,我们应该覆盖onClick方法。

有关详细参考,请参阅问题“existence of parameter (View view)”。

答案 1 :(得分:2)

Android应用开发中的View对象是用户界面的构建块。它们用于在屏幕上创建内容以供用户与之交互。

http://developer.android.com/guide/topics/ui/overview.html

编辑:

在您的情况下,当单击Send按钮并调用sendMessage函数时,它会传递Send按钮的View对象(它传递调用该​​方法的对象的View)。

答案 2 :(得分:1)

参数是点击的按钮,全部是。它实际上是在您提供的链接中说明的:/

  

具体来说,该方法必须:

     

公开

     

具有无效返回值

     

将视图作为唯一参数(这将是单击的视图)

答案 3 :(得分:1)

我确信您应该了解以下方法,因为它是我们经常使用的基本参数。

beta.kubernetes.io/arch=amd64;beta.kubernetes.io/os=linux;node-role.kubernetes.io/master=

当下一次出现sendName()时,将调用此方法。唯一的不同是,单击按钮时将调用sendMessage,因为按钮正好是视图,因此必须使用View类而不是String类。

答案 4 :(得分:0)

  • sendMessage是方法名称
  • 查看是您的班级
  • view是您的参数

答案 5 :(得分:0)

签入xml有声明Sendmessage按钮或imageview。并将其属性设置为android:onClick="sendMessage";。所以发送消息不是用户定义的方法,而是按钮或图像视图上的列表方法单击。所以方法中有View view个参数传递。

在这种情况下我们不需要创建对象和findviewbyid以及setonclicklistener类。

多数民众赞成......