2013-05-12 16 views
0

初學者在這裏。Android方法paramater變量的含義/用法?

首先,這個問題是在我嘗試使用android:onClick實現按鈕點擊並引用方法時到達的。

現在,當您引用方法時,活動中方法的參數必須爲「(View)」。快速問題,方法參數中的單詞視圖之後的變量是什麼?通常它就像「(View v)」或「(View view)」。參數中的第二個變量是什麼,它可以是任何東西嗎?何時使用?只需要關於它的一般信息,無法在任何地方找到這樣的具體信息。

在此先感謝

+0

他們不是兩個參數。每個參數必須用名稱和類型聲明。 'View v'聲明瞭一個名爲'v'的參數''''' – Simon 2013-05-12 09:22:47

回答

1

我想你誤會了。 (View view)中的第一個參數是參數的類型,第二個參數是提供給它的臨時名稱(它只是一個虛擬名稱,因此您可以使用任何您喜歡的名稱)。例如,如果我必須傳遞一個整數作爲參數,我會使用(int i),其中i被理解爲int類型。因此,在您的情況下,View類型的對象暫時稱爲view作爲參數傳遞給函數。

+0

所以無論是在這種情況下查看,我可以改變任何我喜歡的?有點像一個變量? – Alex 2013-05-12 21:14:31

+1

是的,這就是爲什麼它也被稱爲「虛擬」變量。 – Neoh 2013-05-13 03:57:28

+0

謝謝!這就是我需要的。 – Alex 2013-05-13 04:58:17

0

這是您單擊視圖的引用。看看這裏的question,你可能會發現何時使用它。

0

所以你在問關於onClick()? 這種方法是從View.onClickListener界面,你可以看到在文檔中http://developer.android.com/reference/android/view/View.OnClickListener.html

因爲它是一個接口,所以只會有paramater:查看,它代表了您剛纔點擊美景。例如,如果您將按鈕設置到界面中,則表示按鈕,如果將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! 
      } 
    } 
} 
+0

我試圖詢問在參數View之後的實際字母「v」是什麼。這只是一個變量,我可以改變它到我想要的任何東西? – Alex 2013-05-12 21:16:28

+0

當然,您可以將其更改爲任何您想要的。我認爲這應該是關於編程的一些基本知識。 – buptcoder 2013-05-13 01:24:11

+0

非常基本。這就是爲什麼我是一個乞丐:) – Alex 2013-05-13 04:57:26