• 环境
  • 项目结构
  • 演示 1:PagerTitleStrip
  • 演示 2:PagerTabStrip
  • 演示 3:ViewPager 和动态 Fragment

下载 Demo

环境


  • Windows 2008 R2 64 位
  • Eclipse ADT V22.6.2,Android 4.4.2(API 19)
  • SAMSUNG GT-8618,Android OS 4.1.2

项目结构


Android 演示 ViewPager

图 1 项目结构

Android 演示 ViewPager

图 2 项目主界面 

演示 1:PagerTitleStrip


演示 1 和演示 2 都是利用已有的静态的 xml 页面布局,作为 Pager 的 tab 页。通过 LayoutInflater 将 xml 布局文件,变成 View,供 ViewPager 使用。

Android 演示 ViewPagerAndroid 演示 ViewPager

图 3 演示 PagerTitleStrip 和点击“微博”按钮

package com.example.viewpagerdemo2.ui;
 
import java.util.ArrayList;
import java.util.List;
 
import com.example.viewpagerdemo2.R;
import com.example.viewpagerdemo2.adapter.NewPagerAdapter;
 
import android.os.Bundle;
import android.app.Activity;
import android.support.v4.view.PagerTitleStrip;
import android.support.v4.view.ViewPager;
import android.view.LayoutInflater;
import android.view.View;
 
public class PagerTitleStripDemo extends Activity {
 
    private View view1, view2, view3;
    private ViewPager viewPager;
    private NewPagerAdapter pagerAdapter;
    private PagerTitleStrip myPagerTitleStrip;
    private List<View> viewList;
    private List<String> titleList;
 
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_title);
 
        initClass();
 
        initData();
 
        initControl();
 
        initViewPager();
    }
 
    private void initClass() {
        viewList = new ArrayList<View>();
        titleList = new ArrayList<String>();
    }
 
    private void initData() {
 
        for (int i = 1; i <= 3; i++) {
            titleList.add(String.format("演示1页%s", i));
        }
 
        LayoutInflater lf = LayoutInflater.from(this);
        view1 = lf.inflate(R.layout.layout1, null);
        view2 = lf.inflate(R.layout.layout2, null);
        view3 = lf.inflate(R.layout.layout3, null);
 
        viewList.add(view1);
        viewList.add(view2);
        viewList.add(view3);
    }
 
    private void initControl() {
        viewPager = (ViewPager) findViewById(R.id.myViewPager1);
        myPagerTitleStrip = (PagerTitleStrip) findViewById(R.id.myPagerTitleStrip);
        pagerAdapter = new NewPagerAdapter(this, titleList, viewList);
    }
 
    private void initViewPager() {
        myPagerTitleStrip.setBackgroundColor(getResources().getColor(
                R.color.green));
        myPagerTitleStrip.setTextSpacing(50);
 
        viewPager.setAdapter(pagerAdapter);
    }
}

相关文章:

  • 2022-12-23
  • 2021-11-21
  • 2022-12-23
  • 2022-12-23
  • 2021-04-16
  • 2021-09-16
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-05-30
  • 2022-12-23
  • 2021-05-02
  • 2022-12-23
  • 2021-07-07
  • 2021-11-01
  • 2022-01-14
相关资源
相似解决方案