究竟是什么被视为“视图”?

究竟是什么被视为“视图”?

问题描述:

刚开始的教程中,虽然我的应用运行良好,但我只是想确保我的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

一个视图显示在屏幕上,无论是按钮,一段文字,一个列表...

你完整的布局是一个视图,而每个项目包含在它基本上什么是视图以及。

<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