專案中針對網路異常、空資料、載入失敗等狀態的多種狀態切換檢視
阿新 • • 發佈:2019-02-17
MultipleStatusView
關於
一個可以用來切換多種狀態檢視的view,適用於載入失敗狀態、空資料狀態、網路異常狀態等場景,同時支援自定義檢視!
演示
新增依賴
- 使用Gradle
// 注:如果新增依賴成功,則此句不必新增,此句作用僅為當專案在被稽核時,緊急需要使用時新增
allprojects {
repositories {
...
// 如果新增依賴時,報找不到專案時(專案正在稽核),可以新增此句maven地址,如果找到專案,可不必新增
maven { url "https://dl.bintray.com/albertlii/android-maven/" }
}
}
dependencies {
compile 'com.liyi.view:multiple-status-view:1.0.1'
}
- 使用Maven
<dependency>
<groupId>com.liyi.view</groupId>
<artifactId>multiple-status-view</artifactId>
<version>1.0.1</version>
<type>pom</type>
</dependency>
預設提供的型別
型別 | 說明 |
---|---|
MultipleStatusView.ViewType.TYPE_LOADING | 載入中 |
MultipleStatusView.ViewType.TYPE_NETWORK_POOR | 網路異常 |
MultipleStatusView.ViewType.TYPE_EMPTY | 空資料 |
MultipleStatusView.ViewType.TYPE_ERROR | 載入失敗 |
MultipleStatusView.ViewType.TYPE_SPECIFIED | 自定義 |
**除了預設提供的型別,也可自定義型別
自定義屬性
屬性 | 說明 |
---|---|
loading | 載入中檢視 |
network_poor | 網路異常檢視 |
empty | 空資料檢視 |
error | 載入失敗檢視 |
specified | 自定義檢視 |
使用方法
程式碼中使用
// 顯示指定型別的檢視
MultipleStatusView.showView(int viewType)
// 動態設定檢視
MultipleStatusView.setView(int viewType,int layoutId)
MultipleStatusView.setView(int viewType,View view)
// 關閉狀態檢視
MultipleStatusView.dismiss()
xml中使用
<com.liyi.multiple.MultipleStatusView
android:id="@+id/multipleStatusView_custom"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:empty="@layout/custom_test_view"
app:error="@layout/custom_test_view"
app:loading="@layout/custom_test_view"
app:network_poor="@layout/custom_test_view"
app:specified="@layout/custom_test_view" />