VastNatStateLayout
VastNatStateLayout继承自framelayout。你可以自定义下列状态页面: loading,error,ok,empty data.
💫 特性
- 👍 支持自定义四种状态页面
loading 加载页面
empty data 空数据页面
net error 网络错误页面
retry 重试界面
- 👍 支持自定义界面点击事件
- 👍 使用
VastNetStateMgr
进行界面管理 - 👍 设置有默认界面,添加即用
![](https://i-blog.csdnimg.cn/blog_migrate/423cac558ef0fbcb3021c30c0f2a85c2.jpeg)
![](https://i-blog.csdnimg.cn/blog_migrate/b4fc67069583391f0fff977579524fd2.jpeg)
![](https://i-blog.csdnimg.cn/blog_migrate/184a22aa8dd3d483ec9770f5cd39e5d6.jpeg)
![](https://i-blog.csdnimg.cn/blog_migrate/546611b21c590cd7a03373150687570a.jpeg)
😎 如何使用
implementation 'io.github.sakurajimamaii:VastNetStateLayout:0.0.2'
🤔 设定
在你的布局文件内添加VastNatStateLayout
<com.gcode.vastnetstatelayout.view.VastNetStateLayout
android:id="@+id/net_state_layout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<!--正常情况下显示的内容-->
</com.gcode.vastnetstatelayout.view.VastNetStateLayout>
设定网络状态布局,我们这里以设置加载页面为例
// 获取vastNetStateMgr
val vastNetStateMgr = VastNetStateMgr(this)
// 设置布局
vastNetStateMgr.setLoadingView(R.layout.simple_loading_view)
设置点击事件,我们以设置重试事件为例
vastNetStateMgr.setVastRetryClickListener(object : VastRetryClickListener {
override fun onRetry() {
object:Handler(Looper.getMainLooper()) {
override fun handleMessage(msg: Message) {
super.handleMessage(msg)
mNetStateLayout!!.showNetError() //显示对应的界面
}
}.sendEmptyMessageDelayed(0, 3000)
}
})
将设置好的vastNetStateMgr
给VastNatStateLayout
mNetStateLayout!!.setVastNetStateMgr(vastNetStateMgr)
😄 项目源码
点击VastUtils查看源码,欢迎star和fork,如果你有改进意见也可以在issue内提出