我有一个带滚动视图,标签主机,相对布局和列表视图的布局。
看起来像这样
scrollView
tabHost
relative layout
(the tabs are here for switching the list view)
listview
因此,scrollview位于所有内容之上,然后是tabhost,然后是列表视图和相对布局。 (我知道有人可能会说它在滚动视图中有一个列表视图但是我找不到更好的方法去做我想要完成的事情。)
我试图让我的滚动视图滚动,直到相对布局和标签离开屏幕,然后让列表视图滚动接管。
因此,当我滚动时,滚动视图适用于第一位,直到它只是屏幕上的列表视图,然后滚动视图“消失”,列表视图滚动工作。
我已经查看了这个问题Call removeView() on the child's parent first,并尝试删除了scrollview,然后删除了列表视图,然后将其添加回来,但我无法让它工作。
任何帮助或其他方式都可以做到这一点。
如果需要,这是完整的布局,我以编程方式添加列表视图
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/rl">
<ScrollView android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/scrollView">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:id="@+id/linearLayout">
<TabHost
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/TabHost01">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="50dp"
android:background="#ff00f1ff">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Sunday June 27, 2015"
android:id="@+id/currentDayTextview"
android:textSize="22sp"
android:textColor="#ffffff"
android:textStyle="bold"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true" />
<ImageView
android:layout_width="60dp"
android:layout_height="60dp"
android:id="@+id/nextDayArrow"
android:background="@drawable/next_day_arrow"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true"
android:layout_alignParentTop="true"
android:layout_toEndOf="@+id/currentDayTextview"
android:layout_toRightOf="@+id/currentDayTextview"/>
<ImageView
android:layout_width="60dp"
android:layout_height="60dp"
android:id="@+id/previousDayArrow"
android:background="@drawable/previous_day_arrow"
android:layout_centerVertical="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_toStartOf="@+id/currentDayTextview"
android:layout_toLeftOf="@+id/currentDayTextview"/>
</RelativeLayout>
<TabWidget
android:id="@android:id/tabs"
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1">
</FrameLayout>
</LinearLayout>
</TabHost>
</LinearLayout>
</ScrollView>
</RelativeLayout>
由于
答案 0 :(得分:0)
您应该通过将其视为textview.getParent()。removeView(textview);来检查您已经拥有父项的视图。
然后将其添加为currentLayout.addview(textview)。
或者试试这个, LayoutInflater inflater =(LayoutInflater)getSystemService (Context.LAYOUT_INFLATER_SERVICE);
查看newView = inflater.inflate(R.layout.layout,null);
currentLayout.addView(newTagView);