【问题标题】:Adjust TextView in Layout when TextView is emptyTextView为空时在Layout中调整TextView
【发布时间】:2013-01-07 13:39:48
【问题描述】:

我有一个基本的ListView,单元格中有两个TextViews,当另一个@987654325 中没有任何文本时,我希望TextViews 居中到Layout 的中间@。

这是我当前的 XML:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:minHeight="80dp"
    android:orientation="vertical"
    android:gravity="center_vertical"
    android:paddingLeft="20dp"
    android:paddingRight="20dp" >

    <TextView android:id="@+id/titleTextView"
        android:textStyle="bold"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="2dp"
        android:textSize="16sp"/>

    <TextView android:id="@+id/detailsTextView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="2dp"
        android:layout_below="@id/titleTextView"
        android:textSize="12sp"/>


</RelativeLayout>

我使用RelativeLayout 是因为我希望在添加更多元素时使用它,但我想先弄清楚这部分。切换到 LinearLayout 对调整 TextViews 没有任何影响。

我必须以编程方式调整视图吗?如果是这样,我应该如何处理?从布局中删除一个视图(这需要LinearLayout,对吧)?

【问题讨论】:

    标签: android center textview


    【解决方案1】:

    TextView 为空时,只需将其设置为“消失”,当视图“消失”时,它不会影响其所在的布局,因此另一个TextView 会因为您拥有的重力属性而居中已添加。

    textView.setVisibility(View.GONE);
    

    【讨论】:

    • 所以,我将不得不根据我在BaseAdaptergetView 方法中的内容不断检查和设置TextViews 单元格的可见性?
    • 你可以看看这个来监控TextView我自己从来没有用过,但应该让事情变得简单developer.android.com/reference/android/widget/…
    • 好的。所以,我会继承 TextView 以获得我想要的东西。这是有道理的,但对于这样一个简单的功能来说,它似乎相当沉重。也许这并不像我想的那么简单。
    • 多花心思,在getView里面打勾就行了,这么简单,所有的努力都不值得
    • 它不是,因为无论如何都会调用onTextChanged 方法。但很高兴了解这种符合方法。
    猜你喜欢
    • 1970-01-01
    • 2020-08-01
    • 2013-07-16
    • 1970-01-01
    • 1970-01-01
    • 2019-07-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多