MultiStateView不同的状态下显示不同的界面
来源:互联网 发布:云镜安卓限制安装软件 编辑:程序博客网 时间:2024/05/01 03:46
只要将指定的view放在该控件里面,可以该view在不同的状态下显示不同的界面,这对ListView很有用,比如加载界面,空白界面,错误界面。而且这些见面由你指定布局,非常灵活。
PS:ListView虽然可以设置一个EmptyView,但使用起来不方便,不灵活,有点累赘。
MultiStateView可以设置的属性如下:
msv_loadingView 加载效果的界面
msv_emptyView 空白界面
msv_errorView 错误界面
msv_viewState 当前的状态
要切换MultiStateView的状态只需调用:
public void setViewState(ViewState state)
获得状态
public View getView(ViewState state)
https://github.com/Kennyc1012/MultiStateView
PS:ListView虽然可以设置一个EmptyView,但使用起来不方便,不灵活,有点累赘。
<com.kennyc.view.MultiStateView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/multiStateView" android:layout_width="match_parent" app:msv_errorView="@layout/error_view" app:msv_emptyView="@layout/empty_view" app:msv_loadingView="@layout/loading_view" app:msv_viewState="loading" android:layout_height="match_parent"> <ListView android:id="@+id/list" android:layout_width="match_parent" android:layout_height="match_parent" tools:listitem="@android:layout/simple_list_item_1" /> </com.kennyc.view.MultiStateView>
MultiStateView可以设置的属性如下:
<attr name="msv_loadingView" format="reference" /><attr name="msv_emptyView" format="reference" /><attr name="msv_errorView" format="reference" /><attr name="msv_viewState" format="enum">
msv_loadingView 加载效果的界面
msv_emptyView 空白界面
msv_errorView 错误界面
msv_viewState 当前的状态
要切换MultiStateView的状态只需调用:
public void setViewState(ViewState state)
获得状态
public View getView(ViewState state)
https://github.com/Kennyc1012/MultiStateView