0

我正在使用相对布局(RL)来保存列表视图(lv)和一些其他小部件,如文本视图(tv)、编辑文本(et),然后是几个按钮(btn),最后是一个进度条(铅)。

场景
1.当我将子视图添加到父容器视图即。相对布局(rl),顺序为:
RL(Btn1->Btn2->tv1->tv2->LV->pb)。
那么我们就没有问题,我的意思是没有例外,没有问题。
2.但是当我像
RL(tv1->tv2->LV->Btn1->Btn2->pb) 那样进行排序更改时。
然后我得到一个类播异常。

注意:这两个按钮应该在列表视图上方,因为它们都是社交网站按钮,我指的是 Facebook 和 Twitter。

XML 代码:

<RelativeLayout
    android:id="@+id/rlfornews"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginBottom="5dip"
    android:layout_marginTop="5dip"
    android:background="@drawable/newsbg"
    android:orientation="vertical"
    android:paddingBottom="5dip" >

    <Button
        android:id="@+id/btnbasetw"
        android:layout_width="30dip"
        android:layout_height="30dip"
        android:layout_alignParentRight="true"
        android:layout_centerVertical="true"
        android:layout_marginBottom="10dip"
        android:layout_marginLeft="5dip"
        android:layout_marginRight="10dip"
        android:background="@drawable/twitter_icon"
        android:visibility="gone" />

    <Button
        android:id="@+id/btnbasefb"
        android:layout_width="30dip"
        android:layout_height="30dip"
        android:layout_centerVertical="true"
        android:layout_marginBottom="10dip"
        android:layout_toLeftOf="@id/btnbasetw"
        android:background="@drawable/facebook_icon"
        android:visibility="gone" />

    <TextView
        android:id="@+id/tvnewscon"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="3dip"
        android:background="@drawable/newstitle"
        android:gravity="center_vertical"
        android:paddingLeft="8dip"
        android:shadowColor="@color/black"
        android:shadowDy="1"
        android:shadowRadius="1"
        android:text="@string/news"
        android:textColor="@color/white" />

    <TextView
        android:id="@+id/tvfornews"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/tvnewscon"
        android:layout_marginTop="10dip"
        android:gravity="center"
        android:text="@string/no_data_found"
        android:visibility="gone" />

    <ListView
        android:id="@+id/lvdashboardnews"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_below="@id/tvnewscon"
        android:padding="4dip"
        android:visibility="visible" >
    </ListView>

    <ProgressBar
        android:id="@+id/pbfornews"
        style="?android:attr/progressBarStyleSmall"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true" />
</RelativeLayout>

注意:进度条可能在下方,但它只是为了用户信息,一些数据正在加载。当我获得该数据时,我正在使其对 VIEW.GONE 状态的可见性,并且列表视图已经存在!我的问题是,当我遵循第一个场景时,即使我一直都有一个进度条,但我没有得到 Class Cast 异常。但是当我更改为场景 2 时,我得到了例外。那为什么我会得到它?

4

1 回答 1

0
  1. 我不确定这些,但可能是因为您使用了 android:layout_below = "@id/textview" 而不是使用这些 android:layout_below = "@+id/textview" 所有 UI。

  2. 如果您可以使用 LinearLayout 来完成这些 UI。

于 2013-03-14T07:00:29.230 回答