使用 Textview 作为分隔符而不是 View 是一种好习惯吗
Is that a good practise to use Textview as a separator instead of View
使用 TextView
作为分隔符而不是 View
是一个好习惯吗?如果不是那么为什么?在下图中,我同时使用了 TextView
(即第 1 行)和 View
(即第 2 行),但它们看起来是一样的。我参考了很多网站,但仍然没有得到任何好的解释。这是 TextView
和 View
的代码
TextView
<TextView
android:id="@+id/TextView"
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="@android:color/darker_gray"
android:layout_below="@+id/line1"/>
查看
<View
android:id="@+id/View"
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="@android:color/darker_gray"
android:layout_below="@+id/line2"/>
据我所知,View
只是为了像 Seperator
、give Border
这样的特殊设计而发明的。或者一些创造特殊效果。
但是TextView
是为了写Text
而设计的。因此,要创建 Divider
或 Seperator
,视图是更好的选择。
如果您仅将 TextView
用于分隔符。它会浪费一些内存。因为TextView
会在Init中赋值或者new Objects()
,而onMeasure()
和onDraw()
会花费更多的时间。所以你只需使用 View
作为分隔符。
如果您查看 TextView 的代码 class,您会发现它扩展了 View。换句话说,View class 拥有的所有内容都存在于 TextView class 中,外加一堆其他方法、属性等。如果您使用 TextView 作为分隔符,您将向您的布局添加一个比您实际需要的对象更复杂的对象。这将降低您的应用程序的性能,并且有可能引入未来的错误。因此,不要使用 TextView 作为分隔符。这绝对适合一个View。
使用 TextView
作为分隔符而不是 View
是一个好习惯吗?如果不是那么为什么?在下图中,我同时使用了 TextView
(即第 1 行)和 View
(即第 2 行),但它们看起来是一样的。我参考了很多网站,但仍然没有得到任何好的解释。这是 TextView
和 View
TextView
<TextView
android:id="@+id/TextView"
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="@android:color/darker_gray"
android:layout_below="@+id/line1"/>
查看
<View
android:id="@+id/View"
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="@android:color/darker_gray"
android:layout_below="@+id/line2"/>
据我所知,View
只是为了像 Seperator
、give Border
这样的特殊设计而发明的。或者一些创造特殊效果。
但是TextView
是为了写Text
而设计的。因此,要创建 Divider
或 Seperator
,视图是更好的选择。
如果您仅将 TextView
用于分隔符。它会浪费一些内存。因为TextView
会在Init中赋值或者new Objects()
,而onMeasure()
和onDraw()
会花费更多的时间。所以你只需使用 View
作为分隔符。
如果您查看 TextView 的代码 class,您会发现它扩展了 View。换句话说,View class 拥有的所有内容都存在于 TextView class 中,外加一堆其他方法、属性等。如果您使用 TextView 作为分隔符,您将向您的布局添加一个比您实际需要的对象更复杂的对象。这将降低您的应用程序的性能,并且有可能引入未来的错误。因此,不要使用 TextView 作为分隔符。这绝对适合一个View。