DoraEmptyLayout

描述:一个用来显现暂无数据、加载中和加载错误的布局容器

复杂度:★★☆☆☆

分组:【Dora大控件组】

联系:暂无

技能要点:自定义特点、向ViewGroup中增加控件

照片

Android自定义View - DoraEmptyLayout

Android自定义View - DoraEmptyLayout

Android自定义View - DoraEmptyLayout

Android自定义View - DoraEmptyLayout

动图

Android自定义View - DoraEmptyLayout

软件

github.com/dora4/dora_…

用法

它只能有且只有一个子控件,这个唯一的子控件作为content。经过调用showEmpty、showError、showLoading、showContent来改动显现,在onEmpty、onError、onLoading、onRefresh中处理回调。

emptyLayout = findViewById(R.id.emptyLayout)
        emptyLayout
                .onEmpty {
                    Toast.makeText(this@MainActivity, "onEmpty", Toast.LENGTH_SHORT).show()
                }
                .onError { e ->
                    val tvError = findViewById<TextView>(R.id.tvError)
                    tvError.text = e.message
                    Toast.makeText(this@MainActivity, "onError", Toast.LENGTH_SHORT).show()
                }
                .onLoading {
                    ((this as ImageView).drawable as AnimationDrawable).start()
                    Toast.makeText(this@MainActivity, "onLoading", Toast.LENGTH_SHORT).show()
                }
                .onRefresh {
                    Toast.makeText(this@MainActivity, "onRefresh", Toast.LENGTH_SHORT).show()
                }
自定义特点 描述
dora_emptyLayout 装备空数据的布局
dora_errorLayout 装备加载错误的布局
dora_loadingLayout 装备加载中的布局