问题描述
Utils 类 handleApiError。为活动创建了自定义 Snackbar 方法。 requireview() 用于分配给小吃店的片段。活动使用了哪个函数?
实用工具.kt
fun View.snackbar(message: String,action: (() -> Unit)? = null){
val snackbar = Snackbar.make(this,message,Snackbar.LENGTH_LONG)
action?.let {
snackbar.setAction("Retry"){
it()
}
snackbar.show()
}
}
fun Fragment.handleApiError(
failure : Resource.Failure,retry : (() -> Unit)? = null
){
when{
failure.isNetworkError -> requireView().snackbar("Please check internet Connection",retry )
}
}
fun Activity.handleApiError(
failure : Resource.Failure,retry : (() -> Unit)? = null
){
when{
failure.isNetworkError -> window.currentFocus?.snackbar(
"Please check internet Connection",retry
)
failure.errorCode == 401 ->{
if (this is MainActivity){
//window.decorView.snackbar("Registration Failed")
}else{
//@Todo logout
}
}else -> {
val error = failure.errorBody?.string().toString()
window.currentFocus?.snackbar(error)
}
}
window.currentFocus 不显示小吃店。对于使用 requireView() 分配小吃店的 Fragment 给出 代码.哪个函数用于分配给小吃店的活动?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)