1. 程式人生 > >仿 MIUI 彈性拉伸 view ,支援RecyclerView, ListView, GridView, ScrollView ,View

仿 MIUI 彈性拉伸 view ,支援RecyclerView, ListView, GridView, ScrollView ,View

原文地址

Elasticity 支援 Android 原生控制元件 RecyclerView, ListView, GridView, ScrollView …

這個庫可以讓幾乎所有的 Android View 具有類似 MIUI 系統裡面的一個彈性拉伸的效果。具體的效果可以參考下面的動圖。

Gradle 依賴

在專案的build.gradle檔案新增如下內容:

allprojects {
    repositories {
        ...
        maven { url "https://jitpack.io" }
    }
}

在module 的build.gradle

檔案中新增如下內容:

dependencies {
    // ...

    compile 'com.github.XanderWang:elasticity:1.0.0'
}

使用

RecyclerView

支援線性和瀑布流的 layout managers,可以很容易接入。例項接入程式碼如下:

ecyclerView recyclerView = (RecyclerView) findViewById(R.id.recycler_view);

// Horizontal
ElasticityHelper.setUpOverScroll(recyclerView, ORIENTATION.HORIZONTAL
); // Vertical ElasticityHelper.setUpOverScroll(recyclerView, ORIENTATION.VERTICAL);

任何 View - Text, Image… (可以認為一開始就是 Over-Scroll 狀態)

View view = findViewById(R.id.demo_view);

// Horizontal
ElasticityHelper.setUpStaticOverScroll(view, ORIENTATION.HORIZONTAL);
// Vertical
ElasticityHelper.setUpStaticOverScroll
(view, ORIENTATION.VERTICAL);