0

我已經嘗試了很多教程,但我在Android上有點新,所以這是我的問題。我需要一個導航抽屜的片段內的Viewpager。

我有一個抽屜佈局MainActivity和片段A,B,C和D.
在片段C我有我的佈局,像textViews,imageViews和我需要添加像iOS設備上的viewPager。 問題在於每個教程和這裏回答的問題都表示要在活動上啓動PageAdapter,但我需要在Fragment上使用它,因爲它是我擁有填充C片段信息的信息的位置。
應該出現的視圖尋呼機,只包含一個textView,它填充了一個web服務請求,我得到的消息放在textView上,這就是爲什麼我需要在碎片C上使用這個。所以這裏是我的pageAdapter:使用viewPager與片段android?

public class PageAdapter extends FragmentPagerAdapter { 
private String message; 

public PageAdapter(FragmentManager fm , String message) { 
    super(fm); 
    this.message = message; 

} 

/** 
* Get fragment corresponding to a specific position. This will be used to populate the 
* contents of the view pager 
* 
* @param position Position to fetch fragment for. 
* @return Fragment for specified position. 
*/ 
@Override 
public Fragment getItem(int position) { 
    // getItem is called to instantiate the fragment for the given page. 

    Fragment fragment = new PageVestiarioFragment(); 
    Bundle args = new Bundle(); 
    args.putString("message", message); 
    fragment.setArguments(args); 
    return fragment; 
} 

/** 
* Get number of pages the should render. 
* 
* @return Number of fragments to be rendered as pages. 
*/ 
@Override 
public int getCount() { 
    // Show 3 total pages. 
    return 3; 
} 
} 

這是我pageViewer項目:

<?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:gravity="center_horizontal" 
android:id="@+id/pageViewLayout" 
tools:context="com.example.mobirama.golaco.VestiarioFragment"> 

<TextView 
    android:id="@+id/message_TextView" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="Mensagem recebida via rest" 
    android:textSize="20sp" 
    android:textColor="@color/text_green" /> 
    </RelativeLayout> 

這是我的C片段佈局,只要有太多的信息,我把剛纔那塊地方有綜合瀏覽量(這在一個relativeLayout裏面)

<HorizontalScrollView 
      android:id="@+id/messages_ScrollView" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_centerVertical="true" 
      android:layout_centerHorizontal="true" > 

      <RelativeLayout 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:gravity="center_horizontal"> 

       <android.support.v4.view.ViewPager 
        android:id="@+id/pager" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" /> 

      </RelativeLayout> 

     </HorizontalScrollView> 

只是一塊,我設置的信息

for (Integer i = 0; i < messages.length; i++) { 
      if (messages[i] != null) { 
       items.add(messages[i]); 
       mAdapter = new PageAdapter(getChildFragmentManager() , messages[i].getMessage()); 
       pager.setAdapter(mAdapter); 
      } 
     } 

的問題是機器人工作室的顯示了這個消息:android.support.v4.app.fragmentmanager不匹配android.support.app。 fragmentmanager

我試圖改變支持v13,但沒有奏效。

有人可以幫助我嗎?

+0

看看這個應用程序:https://github.com/Dahnark/Material-Design-Tabs,它是一個應用程序顯示片段內的標籤。您可以在抽屜內添加FrameLayout。 – Dahnark 2015-02-11 00:33:39

回答

0

您定位的是哪個兼容級別?你需要讓一切比賽:

  • FragmentPagerAdapter
  • 您的片段的對象,尤其是片段C

從你的XML()我可以看到你的目標V4,所以你可能要改變一切到v4。

+0

當一切都與v4我有compability的問題:android.support.v4.app.fragmentmanager不符合android.support.app.fragmentmanager – Juliana 2015-02-10 23:25:14

+0

這個錯誤發生在哪裏? android.support.app.fragmentmanager的實例在哪裏?如果您的片段調用getChildFragmentManager()是來自v4支持庫的Fragment實例應該可以正常工作。 – Quanturium 2015-02-10 23:31:01

+0

兼容性的問題解決了我使用v13,但它仍然不顯示佈局 – Juliana 2015-02-15 17:15:46