2016-12-01 63 views
-1

这是一个很好的做法,使用TextView作为分隔符而不是View。如果不是那么为什么?在下图中我使用了TextView(即1号线)和View(即2号线),但看起来相同。我提到很多网站,但仍然没有得到任何好的解释。下面是TextView和代码View这是一个很好的做法,使用Textview作为分隔符而不是视图

enter image description here

的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"/> 
+2

没有。使用查看分隔符 –

+0

textview也是一个视图 – mismanc

+0

阅读问题@Divyesh。我问过,如果答案是否定的,那么解释为什么 – MashukKhan

回答

1

如果您经历了TextView类的代码,您将看到它扩展了View。换句话说,View类所具有的所有内容都存在于TextView类以及其他一些方法,属性等等中。如果您使用TextView作为分隔符,则会为您的布局添加一种更复杂的对象,而不是实际需要的对象。这会降低应用程序的性能,并有可能引入未来的错误。因此,不要使用TextView作为分隔符。这绝对适用于View。

1

按了我所知,View仅仅是发明了在S像Seperatorgive Border这样的特殊设计。或者一些创建特殊效果。

但是TextView正在设计上写Text就可以了。所以要创建DividerSeperator View是更好的选择。

0

如果您使用TextView仅用于Seperator。它会浪费一些记忆。因为TextView将在Init中分配或new Objects(),并且onMeasure()onDraw()会花费更多时间。所以你只需使用View作为分频器。

相关问题