[英]scrollview inside another scrollview is not working
我已經在Layout(xml)文件中將垂直滾動視圖添加到另一個現有的垂直滾動視圖中。 但這是行不通的。 僅外部scrollview有效。
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="wrap_content"
android:layout_width="fill_parent">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/outer_linear_layout"
android:orientation="vertical"
android:isScrollContainer="true">
<RelativeLayout
android:id="@+id/blue_bg_layout_sa"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/bluebg_320_568">
<ImageView
android:id="@+id/logo_img_view_sa"
android:layout_height="150dp"
android:layout_width="250dp"
android:layout_marginTop="20dp"
android:background="@drawable/logo_home_250_150"
android:layout_centerHorizontal="true" />
<ScrollView
android:id="@+id/claim_tiles_scroll_view"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_below="@id/logo_img_view_sa">
<LinearLayout
android:orientation="vertical"
android:layout_width="wrap_content"
android:layout_height="300dp">
<ImageView
android:id="@+id/windshield_btn"
android:layout_height="87dp"
android:layout_width="105dp"
android:layout_marginTop="5dp"
android:background="@drawable/windshield_105_87"
android:onClick="showClaimForm"/>
<TextView
android:id="@+id/windshield_btn_lbl"
android:layout_width="105dp"
android:layout_height="20dp"
android:text="@string/windshield"
android:textColor="@android:color/white"
android:layout_below="@id/windshield_btn"
android:layout_alignStart="@id/windshield_btn"
android:textSize="@dimen/system12"
android:gravity="center"/>
<ImageView
android:id="@+id/pdr_btn"
android:layout_height="87dp"
android:layout_width="105dp"
android:layout_marginTop="5dp"
android:background="@drawable/pdr_105_87"
android:onClick="showClaimForm"/>
<TextView
android:id="@+id/pdr_btn_lbl"
android:layout_width="105dp"
android:layout_height="20dp"
android:text="@string/pdr"
android:textColor="@android:color/white"
android:layout_below="@id/pdr_btn"
android:layout_alignStart="@id/pdr_btn"
android:textSize="@dimen/system12"
android:gravity="center"/>
<ImageView
android:id="@+id/tire_btn"
android:layout_height="87dp"
android:layout_width="105dp"
android:layout_marginTop="5dp"
android:background="@drawable/tire_105_87"
android:onClick="showClaimForm"/>
<TextView
android:id="@+id/tire_btn_lbl"
android:layout_width="105dp"
android:layout_height="20dp"
android:text="@string/pdr"
android:textColor="@android:color/white"
android:layout_below="@id/tire_btn"
android:layout_alignStart="@id/tire_btn"
android:textSize="@dimen/system12"
android:gravity="center"/>
<ImageView
android:id="@+id/wheel_btn"
android:layout_height="87dp"
android:layout_width="105dp"
android:layout_marginTop="5dp"
android:background="@drawable/wheel_105_87"
android:onClick="showClaimForm"/>
<TextView
android:id="@+id/wheel_btn_lbl"
android:layout_width="105dp"
android:layout_height="20dp"
android:text="@string/wheel"
android:textColor="@android:color/white"
android:layout_below="@id/wheel_btn"
android:layout_alignStart="@id/wheel_btn"
android:textSize="@dimen/system12"
android:gravity="center"/>
<ImageView
android:id="@+id/key_btn"
android:layout_height="87dp"
android:layout_width="105dp"
android:layout_marginTop="5dp"
android:background="@drawable/key_replacement_105_87"
android:onClick="showClaimForm"/>
<TextView
android:id="@+id/key_btn_lbl"
android:layout_width="105dp"
android:layout_height="20dp"
android:text="@string/key"
android:textColor="@android:color/white"
android:layout_below="@id/key_btn"
android:layout_alignStart="@id/key_btn"
android:textSize="@dimen/system12"
android:gravity="center"/>
<ImageView
android:id="@+id/gap_btn"
android:layout_height="87dp"
android:layout_width="105dp"
android:layout_marginTop="5dp"
android:background="@drawable/gap_105_87"
android:onClick="showClaimForm"/>
<TextView
android:id="@+id/gap_btn_lbl"
android:layout_width="105dp"
android:layout_height="20dp"
android:text="@string/gap"
android:textColor="@android:color/white"
android:layout_below="@id/gap_btn"
android:layout_alignStart="@id/gap_btn"
android:textSize="@dimen/system12"
android:gravity="center"/>
<ImageView
android:id="@+id/interior_btn"
android:layout_height="87dp"
android:layout_width="105dp"
android:layout_marginTop="5dp"
android:background="@drawable/interior_protection_105_87"
android:onClick="showClaimForm"/>
<TextView
android:id="@+id/interior_btn_lbl"
android:layout_width="105dp"
android:layout_height="20dp"
android:text="@string/interior"
android:textColor="@android:color/white"
android:layout_below="@id/interior_btn"
android:layout_alignStart="@id/interior_btn"
android:textSize="@dimen/system12"
android:gravity="center"/>
<ImageView
android:id="@+id/exterior_btn"
android:layout_height="87dp"
android:layout_width="105dp"
android:layout_marginTop="5dp"
android:background="@drawable/exterior_protection_105_87"
android:onClick="showClaimForm"/>
<TextView
android:id="@+id/exterior_btn_lbl"
android:layout_width="105dp"
android:layout_height="20dp"
android:text="@string/exterior"
android:textColor="@android:color/white"
android:layout_below="@id/exterior_btn"
android:layout_alignStart="@id/exterior_btn"
android:textSize="@dimen/system12"
android:gravity="center"/>
<ImageView
android:id="@+id/theft_btn"
android:layout_height="87dp"
android:layout_width="105dp"
android:layout_marginTop="5dp"
android:background="@drawable/theft_105_87"
android:onClick="showClaimForm"/>
<TextView
android:id="@+id/theft_btn_lbl"
android:layout_width="105dp"
android:layout_height="20dp"
android:text="@string/theft"
android:textColor="@android:color/white"
android:layout_below="@id/theft_btn"
android:layout_alignStart="@id/theft_btn"
android:textSize="@dimen/system12"
android:gravity="center"/>
</LinearLayout>
</ScrollView>
</RelativeLayout>
</LinearLayout>
請提供正確答案的幫助。 提前致謝
你做不到!
如文檔所述 :
ScrollView是一個FrameLayout,這意味着您應在其中放置一個包含所有要滾動內容的子級
如果嘗試,應該得到以下異常:
IllegalStateException "Scrollview can host only one direct child"
一種解決方案是將LinearLayout
作為直接子級添加,然后將另一個ScrollView
放入其中。
將“ android:fillViewport”添加到父ScrollView的屬性,並將其設置為true。 所以他們看起來像這樣。
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:fillViewport="true">
您無法在可滾動視圖中提供滾動。 這適用於所有視圖。 例如:1.ScrollView作為父級,LisView作為子級,反之亦然。 2. ScrollView作為父級,而GridView作為子級,反之亦然。 3. ScrollView中的ScrollView。
解決此滾動問題的唯一方法是:-
->您需要計算內部ScrollView的長度並將其變大。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.