Android方法参数变量意义/使用?

时间:2013-05-12 09:02:40

标签: android methods parameters

初学者。

首先,当我尝试使用android:onClick in xml并引用一个方法来实现按钮点击时,这个问题就到了。

现在,当您引用方法时,活动中方法的参数必须为“(View)”。快速问题,方法参数中的单词View之后的变量是什么?通常它就像“(View v)”或“(View view)”。参数中的第二个变量是什么,它可以是什么?什么时候使用?只是想了解它的一般信息,无法在任何地方找到这样的具体信息。

提前致谢

3 个答案:

答案 0 :(得分:1)

我觉得你误解了。 (View view)中的第一个参数是参数的类型,第二个参数是提供给它的临时名称(它只是一个虚拟名称,所以你可以使用你喜欢的任何东西)。例如,如果我必须传递一个整数作为参数,我会使用(int i),其中i被理解为类型int。因此,在您的情况下,类型为View的对象暂时称为view,以作为参数传递给函数。

答案 1 :(得分:0)

这是对您单击的视图的引用。看看这里的question,您可能会发现何时使用它。

答案 2 :(得分:0)

所以你问的是onClick()? 此方法来自View.onClickListener界面,您可以在http://developer.android.com/reference/android/view/View.OnClickListener.html

中查看该文档

因为它是一个界面,所以只有paramater:View,它代表你刚刚点击的视图。例如,如果在界面中设置按钮,则表示按钮,如果将ImageView设置为界面,则表示ImageView本身;

例如:

YourActiivty extends Activity implements View.OnClickListener {
     public void onCreate(Bundle onSaveInstance) {
         super.onCreate(onSaveInstance);

         setContentView(R.layout.yourlayout);
         //your button, we assume id is R.id.yourbutton;
         Button yourbutton = (Button) findViewById(R.id.yourbutton);
         yourbutton.setOnClickListener(this);
         //your imageview, we assume id is R.id.yourimageview;
         ImageView yourImageView = (ImageView) findViewById(R.id.yourimageview);
         yourImageView.setClickable(true);
         yourImageView.setOnClickListener(this);
     }
     @Override
     public void onClick(View v) {
          int id = v.getId();
          if(id == R.id.yourbutton) {
             //your button is clicked!
          } else if(id == R.id.yourimageview) {
             //your imageview is clicked!
          }
     }
}