# Android特效專輯(四)——APP主頁框架TabHost綁定ViewPager的替換者TabLayout
> 現在很多app都在追求簡單明了,功能又要強大,不過我還是喜歡之前的app風格,就是TabHost,在現在也是有許多app在用,不過選項卡可能都放在下面了,我們想要tabhost有viewpager的滑動效果,其實也很簡單,那就是fragment,在這之前,我都是很復雜的把它們全部綁定在一起聯動的,但是現在就要簡單很多了 ,我們用Android Studio開發
先看下效果圖吧

~~~
我們這次使用到的是TabLayout
~~~
### activity_main.xml
~~~
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.design.widget.TabLayout
android:id="@+id/id_tab_layout"
android:background="#ffffff"
app:tabGravity="fill"
app:tabMode="fixed"
app:tabIndicatorColor="#0ddcff"
app:tabTextColor="#000000"
app:tabSelectedTextColor="#0ddcff"
android:layout_width="match_parent"
android:layout_height="wrap_content">
</android.support.design.widget.TabLayout>
<android.support.v4.view.ViewPager
android:id="@+id/id_view_pager"
android:layout_width="match_parent"
android:layout_height="wrap_content">
</android.support.v4.view.ViewPager>
</LinearLayout>
~~~
### MainActivity
~~~
package com.app.gaohailong.festivalmessage;
import android.os.Bundle;
import android.support.design.widget.TabLayout;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.view.ViewPager;
import android.support.v7.app.AppCompatActivity;
import java.util.ArrayList;
import java.util.List;
public class MainActivity extends AppCompatActivity {
private TabLayout mTablayout;
private ViewPager mViewPager;
private String[] mTitles = new String[]{"節日短信", "發送記錄", "個人設置"};
private List<Fragment> mFragments;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initViews();
}
private void initViews() {
//初始化View
mTablayout = (TabLayout) findViewById(R.id.id_tab_layout);
mViewPager = (ViewPager) findViewById(R.id.id_view_pager);
//初始化List<Fragment>
mFragments = new ArrayList<>();
Fragment mFestivalFragment = new FestivalFragment();
Fragment mRecordFragment = new RecordFragment();
Fragment myFragment = new MyFragment();
mFragments.add(mFestivalFragment);
mFragments.add(mRecordFragment);
mFragments.add(myFragment);
//給ViewPage設置Adapter
mViewPager.setAdapter(new FragmentPagerAdapter(getSupportFragmentManager()) {
@Override
public Fragment getItem(int position) {
return mFragments.get(position);
}
@Override
public int getCount() {
return mFragments.size();
}
@Override
public CharSequence getPageTitle(int position) {
return mTitles[position];
}
});
mTablayout.setupWithViewPager(mViewPager);
}
}
~~~
~~~
記得添加源
~~~
~~~
compile 'com.android.support:design:23.1.1'
~~~
~~~
這樣就可以了,是不是非常的簡單?你也可以去試試呢
~~~
- 前言
- (一)——水波紋過渡特效(首頁)
- (二)——ViewPager渲染背景顏色漸變(引導頁)
- (三)——自定義不一樣的Toast
- (四)——APP主頁框架TabHost綁定ViewPager的替換者TabLayout
- (五)——自定義圓形頭像和仿MIUI卸載動畫—粒子爆炸
- (六)——仿QQ聊天撒花特效,無形裝逼,最為致命
- (七)——飛機升空特效,一鍵清理緩存,靈活運用動畫會有不一樣的感受
- (八)——實現心型起泡飛舞的特效,讓你的APP瞬間暖心
- (九)——仿微信雷達搜索好友特效,邏輯清晰實現簡單
- (十)——點擊水波紋效果實現,邏輯清晰實現簡單
- (十一)——仿水波紋流量球進度條控制器,實現高端大氣的主流特效
- (十二)——仿支付寶咻一咻功能實現波紋擴散特效,精細小巧的View