1.首先需要在activity界面中添加一個viewPaper.
2.viewpaper需要搭配一個擴充卡才能使用,擴充卡可以決定建立多少各view,傳回目前要顯示的view。有多種類型的Adapter,這裡使用的是FragmentPaperAdapter。
public class VpAdapter extends FragmentPagerAdapter {
private ArrayList<ImageView> imageViews;
public FragmentManager m_fm;
public VpAdapter(FragmentManager fm) {
super(fm);
m_fm=fm;
this.imageViews = imageViews;
}
/*擷取目前需要顯示的view*/
@Override
public Fragment getItem(int position) {
Fragment testFragment=null;
switch (position)
{
case 0:
return new BlankFragment();
case 1:
return new BlankFragment2();
case 2:
return new BlankFragment3();
}
return testFragment;
}
/**
* 擷取目前要顯示對象的數量
*/
@Override
public int getCount() {
// TODO Auto-generated method stub
return 3;
}
}
3.建立Fragment并且為每個Fragment建立UI。
這裡注意建立的時候是否需要Interface callback。
如果包含了Interface callback,那麼需要在Activity中實作該接口,注意這裡的Activity繼承的是FragmentActivity,因為Adapter需要GetSupportFragmentMannager傳回的管理器,隻有繼承這個類才能使用該接口。
public class MainActivity extends FragmentActivity implements BlankFragment.OnFragmentInteractionListener,
BlankFragment2.OnFragmentInteractionListener2,BlankFragment3.OnFragmentInteractionListener3 {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ViewPager viewPager=findViewById(R.id.id_viewpaper);
viewPager.setAdapter(new VpAdapter(getSupportFragmentManager()));
}
public void sendMessage(View view)
{
}
@Override
public void onFragmentInteraction(Uri uri) {
}
@Override
public void onFragmentInteraction2(Uri uri) {
}
@Override
public void onFragmentInteraction3(Uri uri) {
}
}
建立UI
4.為該Activity設定一個Style,因為我目前要做的是開機啟動頁面,是以需要全屏顯示圖像。
添加一個全屏的Style屬性:
應用屬性:
5.傳回fragment個數,在剛剛實作的Adapter中,有個getCount函數,在這裡傳回個數即可。
/**
* 擷取目前要顯示對象的數量
*/
@Override
public int getCount() {
// TODO Auto-generated method stub
return 3;
}
6.為每一個View建立單獨的Fragment.
/*擷取目前需要顯示的view*/
@Override
public Fragment getItem(int position) {
Fragment testFragment=null;
switch (position)
{
case 0:
return new BlankFragment();
case 1:
return new BlankFragment2();
case 2:
return new BlankFragment3();
}
return testFragment;
}
7.在Activity中應用Adapter.
public class MainActivity extends FragmentActivity implements BlankFragment.OnFragmentInteractionListener,
BlankFragment2.OnFragmentInteractionListener2,BlankFragment3.OnFragmentInteractionListener3 {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ViewPager viewPager=findViewById(R.id.id_viewpaper);
viewPager.setAdapter(new VpAdapter(getSupportFragmentManager()));
}
8.顯示效果。