2013-03-19 70 views
0

我使用ViewPager我的應用程序中,我有5 Fragments不工作,我有兩種方法可以導航到一個Fragment到另一種是通過使用ViewPager水平交換第二個是我有導航button在每個頁面點擊,我可以導航通過Fragments,但是當我使用導航ButtonViewPager不工作意味着我無法執行水平swap.Is任何人都有任何想法如何解決它。ViewPager是,當我試圖導航從一個片段到其它

+0

請給我一些代碼,這些文字不會傳達太多 – Triode 2013-03-19 09:40:13

+0

我已編輯是明確的還是我應該發佈完整的代碼。 – 2013-03-19 09:46:21

+0

如果發佈的答案不正確,您可能需要發佈代碼 – Triode 2013-03-19 09:49:36

回答

1
((ViewPager) mView.findViewById(R.id.viewpager_id)).setCurrentItem(youId); 

使用此方法來改變標籤的ViewPager裏面,而不是創建new Fragment

+0

感謝您的快速重播,但這不是我想要的..我張貼代碼。 – 2013-03-19 10:00:07

+0

好的,發佈你的代碼:) – Triode 2013-03-19 10:10:21

+0

我已經發布代碼請看看。 – 2013-03-19 11:15:56

0

你需要添加implements ViewPager.OnPageChangeListener到您的主要活動還有以下功能。

@Override 
public void onPageScrollStateChanged(int arg0) { 
} 

@Override 
public void onPageScrolled(int arg0, float arg1, int arg2) { 
} 

@Override 
public void onPageSelected(int index) { 
    //Log.d(TAG, "ConnectProfileActivity::onPageSelected"); 
    final ActionBar bar = getActionBar(); 
    bar.getTabAt(index).select();   
} 
+0

感謝您的答案,但這不是我想要的。 – 2013-03-20 04:12:17

0

是的,我解決我自己的問題,只是我必須在其中調用我在viewpager添加片段FragmentActivity。 像這樣

public void OnClick(View v){ 
Intent i=new Intent(getActivity(),MyFragmentActivity.class) 
startIntent(i); 

但問題是它總是從開始的頁面。

0

裏面你的OnClick功能,把下面的代碼

ViewPager VP =(ViewPager)getActivity()findViewById(ViewPagerId)。

+0

請再次閱讀我的問題在這裏我按下一個片段內的按鈕.so片段有它自己的佈局,我不能引用ViewPager那裏它會拋出null。 – 2013-03-21 04:14:31

+0

使用getActivity()方法,你會得到一個初始化的ViewPager對象,但是當你使用mView.findViewById時,你會得到一個空指針異常 – 2013-03-21 04:28:06

+0

我沒有在我的片段佈局中使用viewpager佈局,所以它不可能在fragment中使用這個ID有沒有其他的方法。 – 2013-03-21 04:35:05

相關問題