1. 程式人生 > >TabLayout橫向滑動

TabLayout橫向滑動

                                                                            main

 package animtest.com.example.e531.tablelayout_demo2;


import android.support.design.widget.TabLayout;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.view.ViewPager;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;


import java.util.ArrayList;
import java.util.List;


/**
 * tablayout+viewPager
 */
public class MainActivity extends AppCompatActivity {


    private List<String> datas=new ArrayList<String>();


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        TabLayout tabLayout= (TabLayout) findViewById(R.id.tas);
        ViewPager viewPager= (ViewPager) findViewById(R.id.vp);


        datas.add("推薦");
        datas.add("要聞");
        datas.add("娛樂");
        datas.add("科技");
        datas.add("汽車");
        datas.add("體育");
        datas.add("圖片");
        datas.add("動漫");
        datas.add("社會");
        datas.add("遊戲");


//        tabLayout.addTab();
        viewPager.setAdapter(new MyAdapter(getSupportFragmentManager()));


        //進行關聯
        tabLayout.setupWithViewPager(viewPager);


    }




    class MyAdapter extends FragmentPagerAdapter{


        //帶參的構造方法
        public MyAdapter(FragmentManager fm) {
            super(fm);
        }


        //返回選項卡的文字 ,,,新增選項卡
        @Override
        public CharSequence getPageTitle(int position) {
            return datas.get(position);
        }


        @Override
        public Fragment getItem(int position) {
            Log.d("zzz","position:"+position);


            //建立fragment物件並返回
            Bundle bundle=new Bundle();
            bundle.putString("key",datas.get(position));


            ContentFragment contentFragment=new ContentFragment();
            contentFragment.setArguments(bundle);


            return contentFragment;
        }


        @Override
        public int getCount() {
            return datas.size();//返回選項卡的數量
        }
    }


}

 Fragment

 package animtest.com.example.e531.tablelayout_demo2;


import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.TextView;


/**
 * Created by e531 on 2017/10/13.
 */
public class ContentFragment  extends Fragment {


    @Nullable
    @Override
    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
        View view=View.inflate(getActivity(),R.layout.content,null);
        TextView textView= (TextView) view.findViewById(R.id.tv);


        Bundle bundle=getArguments();
        textView.setText(bundle.getString("key"));




        return view;
    }
}

Xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    tools:context="animtest.com.example.e531.tablelayout_demo2.MainActivity">




    <android.support.design.widget.TabLayout
        android:layout_width="match_parent"
        android:layout_height="50dp"
        android:id="@+id/tas"
        app:tabGravity="center"
        app:tabIndicatorColor="@color/colorAccent"
        app:tabMode="scrollable"
        app:tabSelectedTextColor="@color/colorPrimaryDark"
        app:tabTextColor="@color/colorPrimary"
        ></android.support.design.widget.TabLayout>


    <android.support.v4.view.ViewPager
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:id="@+id/vp"
        android:layout_below="@+id/tas"
        ></android.support.v4.view.ViewPager>




</RelativeLayout>


<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center">


    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/tv"
        android:textColor="#f00"/>


</LinearLayout>

相關推薦

側滑開啟抽屜+tablayout橫向滑動標題

抽屜佈局加tablayout+viewpager 記住:在抽屜fragment中必須加上 android:layout_gravity="start"側滑開啟選單,start為左邊滑動開啟,end為右滑開啟 <?xml version="1.0" encoding="utf-8"?

在Fragment裡面寫TabLayout橫向滑動

import android.os.Bundle; import android.support.annotation.NonNull; import android.support.annotation.Nullable; import android.support.

TabLayout橫向滑動

                                                                            main  package animtest.

TabLayout橫向滑動選單code

一、Tablelayout簡介       Tablelayout類以行和列的形式對控制元件進行管理,每一行為一個TableRow物件,或一個View控制元件。當為TableRow物件時,可在TableRow下新增子控制元件,預設情況下,每個子控制元件佔據一列。 當為View時,該View將獨佔一行。 二、

橫向滑動Tablayout

橫向滑動只需要在佈局用Tablyout控制元件 在此之前在build.gradle裡面新增 compile 'com.android.support:design:25.0.1' 下面是佈局檔案 <android.support.design.widget.Ta

橫向滑動選單TabLayout

簡介: 橫向滑動選單是當今主流App中很常見的一種自定義控制元件。 主要用於適配多個分類而出現的,一般常見於分類很多的時候,一屏控制元件無法容納全部分類,這樣我們需要讓使用者去手動滑動,以便檢視螢幕

橫向滑動 TabLayout

        @Override     public void onActivityCreated(@Nullable Bundle savedInstanceState) {         super.onActivityCreated(savedInstanceState);           /

側拉 橫向滑動tablayout 無限輪播

首先是主 導包:design PullToRefreshLayout依賴包 compile 'com.jwenfeng.pulltorefresh:library:1.0.3'  tablayout 抽屜佈局  (頭條框)   compile 'com.android.su

Android橫向滑動導航TabLayout

<android.support.design.widget.TabLayout android:layout_width="match_parent" android:l

實現移動端touch事件的橫向滑動列表效果

parseint 滑動 borde lec let doc kit order mov 要實現手機端橫向滑動效果並不難,了解實現的原理及業務邏輯就很容易實現。原理:touchstart(手指按下瞬間獲取相對於頁面的位置)——》touchmove(手指移動多少,元素相應移動多

橫向滑動頁面,導航條滑動居中的 js 實現思路

let blog turn 頭條 2個 fse ret 咨詢 導航欄 最近在做新聞咨詢頁的項目,各個新聞頻道通過橫向滑動切換,頂部的導航active欄需要跟著切換到對應頻道,並且active到達中部時,要一直處在中間。 類似效果就是uc瀏覽器《UC頭條》的導航欄滑動居中一樣

iOS UITableView的橫向滑動

sets ctr stat ret efault settitle alloc ble ring 在開發中橫向滑動我們通常會想到用UICollectionView,確實這個好用,但有時候需求不太明確而且用UICollectionView的頭部需要自定義沒有UITab

iOS UITableView橫向滑動點擊UIButton放大

leg lec cli oid The indicator cor 進行 ace 上篇博客已經介紹了如何使用UITableView橫屏滑動,本篇博客加上了點擊放大的操作,是放在UITableViewCell的cell上的,因為可視化控件太多了,故此隱藏掉,使

jquery 實現 選單橫向滑動以及滑動選單時對應導航選中

1:實現效果 2:css 部分可自己補充; 3:簡單的html部分; @* 菜品導航 *@ <ul class="grin_nav"> <li class="navActive"> <span>酸

Android中使用HorizontalScrollView橫向滑動佈局

在Android中,ListView通常用來實現縱向滾動的列表,而HorizontalScrollView則可以實現橫向滾動的列表項。 引入HorizontalScrollView控制元件很簡單,例如在一個LinearLayout中: <HorizontalScrollView

用css巧妙實現移動端橫向滑動展示功能

公司需要做一個手機橫向滑動的效果,不想用js外掛,太麻煩,匯入程式碼也多。所以去網上找了一下,用css就能實現,挺方便的。主要利用了display:-webkit-box來實現。 <!DOCTYPE html> <html> <head> <ti

TabLayout橫向標題

需要匯入依賴: compile ‘com.android.support:design:26+’ 佈局: <?xml version="1.0" encoding="utf-8"?> <android.support.design.widget.Tab

小程式列表橫向滑動

<1>xml檔案 <view> <scroll-view scroll-x class="scroll-header"> <view class="wra

小程式中橫向滑動的問題

小程式元件 scroll-view 中分別有上下豎向滑動和左右橫向滑動之分,在這次專案中剛好需要用到橫向滑動,但在測試過程中發現橫向滑動沒有了效果(靜止在那裡沒移動過),經除錯發現: 1.scroll-view 中的需要滑動的元素不可以用 float 浮動; 2.scro

ViewPager結合TabLayout --- 禁止滑動(點選切換)

【記錄】菜鳥記錄點滴 場景: ViewPager結合TabLayout,兩個Tab項(Tab1, Tab2),需要先在Tab1執行某些操作後,才能滑動ViewPager(點選Tab)切換到Tab2 1. 首先自定義CustomViewPager,可以設定允許/禁止滑動Vi