2015-04-16 42 views
0

我在使用SlidingUpPanel(https://github.com/umano/AndroidSlidingUpPanel)和FragmentStatePagerAdapter時遇到問題。SlidingUpPanel使用FragmentStatePagerAdapter加載錯誤的面板

我在尋呼機中有3個片段:前兩個滑動面板(一個片段和一個硬編碼佈局),第三個沒有它。 當我有一個只有兩個片段的傳呼機時,面板工作得很好。現在我增加了三分之一,他們不再工作了。

首先片段創建正確,但是當我一直滑動到第三個,然後回來面板搞砸了。 基本上,以前在第一個片段上的面板現在在第二個面板上,第二個面板的硬編碼佈局現在不見了,第一個片段的面板是空的。

所有片段的主要內容仍然是正確的,並按照預期行事。

我畫的情況的模式更好地說明:

我的代碼來選擇,這個片段:

public Fragment getItem(int i) { 
    Fragment fragment = null; 
    switch (i) { 
     case 0: 
      fragment = new MatchListFragment(); 
      break; 
     case 1: 
      fragment = new StreamFragment(); 
      break; 
     case 2: 
      fragment = new PendingMatches(); 
      break; 
     default: 
      break; 
    } 
    return fragment; 
} 

佈局第一片段(MatchListFragment):

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/container_layout" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="@color/white" 
    android:gravity="center" 
    android:orientation="vertical" 
    android:visibility="visible"> 

    CONTENT 

</RelativeLayout> 

<FrameLayout 
    android:id="@+id/scrollable_panel" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" /> 

佈局第二片段(StreamFragment)

<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical"> 

    <ListView 
     android:id="@+id/log_list" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:clickable="false" 
     android:divider="@drawable/material_divider" 
     android:dividerHeight="1dp" 
     android:visibility="visible" /> 

</LinearLayout> 

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    android:id="@+id/scrollable_panel" 
    android:layout_width="match_parent" 
    android:layout_height="88dp" 
    android:background="@color/white" 
    android:gravity="center"> 

    <ImageView 
     android:id="@+id/icon" 
     android:layout_width="match_parent" 
     android:layout_height="20dp" 
     android:layout_alignParentBottom="true" 
     android:background="@color/light_gray" /> 

    <ImageView 
     android:layout_width="25dp" 
     android:layout_height="10dp" 
     android:layout_alignParentBottom="true" 
     android:layout_centerHorizontal="true" 
     android:layout_margin="5dp" 
     android:src="@drawable/green_pill" /> 

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     xmlns:app="http://schemas.android.com/apk/res-auto" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_above="@id/icon" 
     android:layout_alignParentTop="true" 
     android:orientation="horizontal"> 

     <com.coffeestrap.android.Widgets.IconAndText 
      android:id="@+id/profile_switch" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_margin="4dp" 
      android:layout_weight="1" 
      app:resource="@drawable/ic_profile_icon" 
      app:undertext="New" /> 

     <com.coffeestrap.android.Widgets.IconAndText 
      android:id="@+id/talk_switch" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_margin="4dp" 
      android:layout_weight="1" 
      app:resource="@drawable/ic_talk_icon" 
      app:undertext="Learning" /> 

     <com.coffeestrap.android.Widgets.IconAndText 
      android:id="@+id/conversation_switch" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_margin="4dp" 
      android:layout_weight="1" 
      app:resource="@drawable/ic_conversation_icon" 
      app:undertext="Teaching" /> 

     <com.coffeestrap.android.Widgets.IconAndText 
      android:id="@+id/all_switch" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_margin="4dp" 
      android:layout_weight="1" 
      app:resource="@drawable/ic_all_icon" 
      app:undertext="All" /> 

    </LinearLayout> 

</RelativeLayout> 

我真的不能明白怎麼解決這個特別是因爲在第二個片段(StreamFragment())滑動面板佈局是硬編碼的,我不明白爲什麼它正確地加載其他所有內容並替換面板w從第一個片段(MatchListFragment)開始。

回答

0

最後,我堅信這是我使用的圖書館的問題,而不是由我造成的問題。 我在他們的github頁面上打開了一個問題 here