我正在通过 Android 开发人员 tutorial 进行工作现在,我们正在创建一个方法来匹配我们为 android:onClick="sendMessage"
指定的方法名称。
方法如下:
/** Called when the user clicks the Send button */
public void sendMessage(View view) {
// Do something in response to button
}
文本对此方法进行了如下描述:
为了让系统将此方法与 android:onClick 指定的方法名称相匹配,签名必须与所示完全相同。具体来说,该方法必须:
- 公开
- 返回值为空
- 将 View 作为唯一参数(这将是被单击的 View )
我明白为什么它必须是 public 以及为什么返回值为 void,但为什么该方法采用 (View view) 而不是仅 (view) ?我有 Ruby 背景,所以语法让我很困惑。为什么我们要这样传递参数呢?
最佳答案
why does the method take (View view) instead of just (view)?
View
意味着它是一个 class
,而 view
只是一个 variable
添加这 2 个就是 view 变量
一个View 类
的对象,可以调用它的所有方法。
关于Java、Android 将参数传递给方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24256733/