【问题标题】:What is considered a "View" exactly?究竟什么是“视图”?
【发布时间】:2012-07-30 11:47:39
【问题描述】:

刚刚完成了入门教程,虽然我的应用程序运行良好,但我只是想确保我的 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,Button)元素本身是单独的视图?换句话说,上面的代码包含两个“视图”,而不是两个“控件”?在后面的代码中,我们遇到了一个叫做 TextView 的东西,它里面直接有“View”这个词,而其他的没有,这让我有点失望。

我唯一的其他经验是 ASP.Net 和 C# Web 开发,所以我想我的问题可以表述为,Android“视图”是否等同于 ASP.Net Web 控件(asp:DropDownList、asp:Button 等? )?如果我想在上面的代码中添加更多的控件,比如更多的按钮,我会说,“我要在这个布局中添加更多的视图吗?”或者会是,“我要向这个视图添加更多控件?”还是……?

【问题讨论】:

  • 对,这就是我首先去的地方。它说 TextView 是直接子类,而 Button、EditText 等是间接子类。那么将这两种类型(直接和间接)称为“视图”是否安全?还是我应该称它们为“控件”?等
  • Android 世界中没有“控件”,只有“视图”
  • @CptSupermrkt,你也可以看到:mobileorchard.com/… Android 中没有控件,只有提琴手所说的视图
  • 如果您不确定某个东西是否是视图,请查看文档。如果它扩展了 View,它就是一个 View。 :)

标签: android terminology android-view


【解决方案1】:

视图基本上是屏幕上显示的任何东西,无论是按钮、文本、列表...

您的完整布局是一个视图,其中包含的每个项目也是一个视图。

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

上面的RelativeLayout、LinearLayout、TextView、EditText和Buttons都是“视图”。 LinearLayout 和 RelativeLayout 是容器视图,但它们仍然可以作为视图引用,以便在它们上执行某些功能。

【讨论】:

  • 那个解释给了我“哦,呃,现在我明白了”的时刻,这一切都是有意义的。谢谢!
  • 那些时刻是不是很美好? :) 乐于助人。
猜你喜欢
  • 2014-10-28
  • 2012-08-27
  • 2010-11-12
  • 2011-03-18
  • 2011-01-22
  • 1970-01-01
相关资源
最近更新 更多