如何解决在utils类中使用snackbar为活动分配哪种方法
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 举报,一经查实,本站将立刻删除。