滑動指示選項卡android.support.design.widget.TabLayout的簡單使用,android選項卡滑動

來源:互聯網
上載者:User

滑動指示選項卡android.support.design.widget.TabLayout的簡單使用,android選項卡滑動

該TabLayout的功用,簡單的說,就是當使用者在該TabLayout的選項卡子item中選擇觸摸時候,文字和下方的指標橫條滑動指示。這個功能就是以前APP開發常用的選項卡某一卡片被切換、選中時候的效果。只不過現在Android官方SDK使之標準化。
要使用android.support.design.widget.TabLayout ,需要在自己的工程項目中引入Android的兩個庫,過程比較複雜,也容易出現小錯誤,現在一步一步來。android.support.design.widget.TabLayout在Android擴充(extras)支援(support)包design中,但是design又依賴另外一個support v7包中的appcompat庫,因此需要事先匯入,在匯入處理程序中,如果某些res目錄下的value值過高比如value-23(Android SDK 23)但不巧發生錯誤如提示說找不到某某值,可以整個刪除掉。
(1)匯入support v7擴充包中的(\android-sdk-windows\extras\android\support\v7\appcompat),作為design庫的Library:

 

(2)匯入Android擴充包中的design庫(\android-sdk-windows\extras\android\support\design),作為項目的Library:

 

(3)以上完成後,就可以在自己的項目中引用Android擴充包support中的design庫做具體開發了。
現在給出一個例子,實現本文第一張圖所示效果:

activity_main.xml:

 1 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 2     xmlns:tools="http://schemas.android.com/tools" 3     xmlns:app="http://schemas.android.com/apk/res-auto" 4     android:layout_width="match_parent" 5     android:layout_height="match_parent" > 6  7     <!-- app:tabIndicatorColor 指標(字型下面的那一個橫)顯示顏色 --> 8     <!-- app:tabSelectedTextColor 選中的字型顏色 --> 9     <!-- app:tabTextColor 未選中的字型顏色 -->10 11     <android.support.design.widget.TabLayout12         android:id="@+id/tabLayout"13         android:layout_width="match_parent"14         android:layout_height="wrap_content"15         app:tabIndicatorColor="#26c6da"16         app:tabSelectedTextColor="#f44336"17         app:tabTextColor="#bdbdbd" />18 19 </RelativeLayout>

MainActivity.java:

 1 package com.zzw.testtablayout; 2  3 import java.util.ArrayList; 4  5 import android.app.Activity; 6 import android.os.Bundle; 7 import android.support.design.widget.TabLayout; 8  9 public class MainActivity extends Activity {10 11     @Override12     protected void onCreate(Bundle savedInstanceState) {13         super.onCreate(savedInstanceState);14         setContentView(R.layout.activity_main);15 16         TabLayout tabLayout = (TabLayout) findViewById(R.id.tabLayout);17         ArrayList<String> tabList = new ArrayList<String>();18         for (int i = 0; i < 10; i++) {19             tabList.add("選項" + i);20         }21 22         for (int i = 0; i < tabList.size(); i++) {23             tabLayout.addTab(tabLayout.newTab().setText(tabList.get(i)));24         }25         tabLayout.setTabMode(TabLayout.MODE_SCROLLABLE);26     }27 }

有的使用android.support.design.widget.TabLayout出現java.lang.reflect.InvocationTargetException

解決方案:http://www.cnblogs.com/zzw1994/p/5012467.html

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.