MultiStateView

介绍:

只要将指定的view放在该控件里面,可以该view在不同的状态下显示不同的界面,这对ListView很有用,比如加载界面,空白界面,错误界面。而且这些见面由你指定布局,非常灵活。

运行效果:

使用说明:

MultiStateView

<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)
已下载
0