MultiStateView異なる状態で異なるインタフェースを表示
1976 ワード
指定したviewをこのコントロールに入れるだけで、viewは異なる状態で異なるインタフェースを表示することができ、これはListViewに役立ちます.たとえば、インタフェースのロード、空白インタフェース、エラーインタフェースなどです.また、これらの出会いはあなたがレイアウトを指定し、非常に柔軟です.
PS:ListViewはEmptyViewを1つ設定できますが、使い勝手が悪く、柔軟ではなく、ちょっと面倒です.
MultiStateViewで設定できるプロパティは次のとおりです.
msv_loadingViewロード効果のインタフェース
msv_EmptyView空白インタフェース
msv_ErrorViewエラーインタフェース
msv_view State現在の状態
MultiStateViewのステータスを切り替えるには、次の手順に従います.
public void setViewState(ViewState state)
取得ステータス
public View getView(ViewState state)
https://github.com/Kennyc1012/MultiStateView
PS:ListViewはEmptyViewを1つ設定できますが、使い勝手が悪く、柔軟ではなく、ちょっと面倒です.
<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_view State現在の状態
MultiStateViewのステータスを切り替えるには、次の手順に従います.
public void setViewState(ViewState state)
取得ステータス
public View getView(ViewState state)
https://github.com/Kennyc1012/MultiStateView