2012-08-01 190 views
3

剛開始的教程中,雖然我的應用運行良好,但我只是想確保我的Android術語是正確的。究竟是什麼被視爲「視圖」?

例如,第一個應用教程中,我經歷了你修改activity_main.xml中包括:

<EditText android:id="@+id/edit_message" 
    android:layout_width="0dp" 
    android:layout_height="wrap_content" 
    android:hint="@string/edit_message" 
    android:layout_weight="1" /> 

<Button 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="@string/button_send" 
    android:onClick="sendMessage" /> 

我在理解是正確的,這些(EditText上,按鈕)元素本身是個人意見?換句話說,上面的代碼包含兩個「視圖」,而不是兩個「控件」?後來在代碼中,我們遇到了一個叫做TextView的東西,它直接包含了「View」這個詞,而其他的則沒有,這有點讓我失望。我認爲我的問題可以解釋爲,Android的「視圖」等同於ASP.Net Web控件(asp:DropDownList,asp:Button等等)。 。)?如果我想爲上面的代碼添加更多的控件,比如更多的按鈕,我會說,「我要添加更多的視圖到這個佈局?」或者會是,「我要爲這個視圖添加更多控件?」要麼...?

+0

http://developer.android.com/reference/android/view/View.html – Habib 2012-08-01 14:44:25

+0

對,這就是我第一次去的地方。它說TextView是一個直接的子類,而Button,EditText等是間接的子類。那麼將這兩種類型(直接和間接)稱爲「視圖」是否安全?或者我應該叫他們「控制」?等等。 – CptSupermrkt 2012-08-01 14:48:33

+2

Android世界中沒有「控件」,只是「視圖」 – fiddler 2012-08-01 14:52:52

回答

5

一個視圖顯示在屏幕上,無論是按鈕,一段文字,一個列表...

你完整的佈局是一個視圖,而每個項目包含在它基本上什麼是視圖以及。

<RelativeLayout> 
    <TextView/> 
    <EditText/> 
    <LinearLayout> 
     <Button> 
     <Button> 
    </LinearLayout> 
</RelativeLayout> 

在上面,RelativeLayout,LinearLayout,TextView,EditText和Buttons都是「視圖」。 LinearLayout和RelativeLayout是容器視圖,但它們仍然可以作爲視圖引用,以便對它們執行某些功能。

+0

這個解釋給了我,「哦,呃,現在我明白了」這一切,只是有道理。謝謝! – CptSupermrkt 2012-08-01 14:57:58

+1

那些時刻不是盛大的? :) 樂於幫助。 – Barak 2012-08-01 15:00:49