文档详情

Android中实现可滑动的Tab的3种方式.docx

发布:2017-12-05约1.68万字共19页下载文档
文本预览下载声明
这篇文章主要介绍了Android中实现可滑动的Tab的3种方式,需要的朋友可以参考下1. 第一种,使用 TabHost + ViewPager 实现该方法会有一个Bug,当设置tabHost.setCurrentTab()为0时,ViewPager不显示(准确的说是加载),只有点击其他任意一个tab后才会加载。有解的同学吼一声~~~~~~~Activity:复制代码代码如下:package com.swordy.demo.android.fragment;import java.util.Random;import android.os.Bundle;import android.support.v4.app.Fragment;import android.support.v4.app.FragmentActivity;import android.support.v4.app.FragmentManager;import android.support.v4.app.FragmentStatePagerAdapter;import android.support.v4.view.PagerAdapter;import android.support.v4.view.ViewPager;import android.support.v4.view.ViewPager.OnPageChangeListener;import android.view.LayoutInflater;import android.view.View;import android.view.View.OnClickListener;import android.view.ViewGroup;import android.widget.TabHost;import android.widget.TabHost.OnTabChangeListener;import android.widget.TabWidget;import android.widget.TextView;import com.swordy.demo.android.R;import com.swordy.library.android.util.ELog;/**?* 1. 使用TabHost和ViewPager组合实现一个可以滑动的tab?* 2. bug:如果当前页为0,则ViewPager第一次不加载。?*??* @author swordy?* @email mryangjian@?* @since Jan 20, 2014?* @version 1.0?*/public class SlideTabs1 extends FragmentActivity{??? private static final String TAG = AndroidDemos.SlideTabs1;??? private TabHost mTabHost;??? private ViewPager mViewPager;??? private PagerAdapter mPagerAdapter;??? private String[] addresses = { first, second, third };??? @Override??? protected void onCreate(Bundle arg0)??? {??????? super.onCreate(arg0);??????? setContentView(R.layout.fragment_slidetabs1);??????? mViewPager = (ViewPager) findViewById(R.id.viewPager1);??????? mPagerAdapter = new MyPagerAdapter(getSupportFragmentManager());??????? mViewPager.setAdapter(mPagerAdapter);??????? mTabHost = (TabHost) findViewById(android.R.id.tabhost);??????? mTabHost.setup();??????? mTabHost.addTab(mTabHost.newTabSpec(one).setIndicator(one-1)??????????????? .setContent(R.id.viewPager1));??????? mTabHost.addTab(mTabHost.newTabSpec(two).setIndicator(two-2)???????????????
显示全部
相似文档