Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/235.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何传递身份证正确吗?我没有';我不明白这个错误? /****这里是我列表中的适配器*****/ 类CurrencyMenuAdapter( var viewModel:MainViewModel, var currencyList:ObservableList):ObservableRecycleServiceAdapter(currencyList){ private val TAG=“CurrencyMenuAdapter” private val model=MainViewModel() 覆盖视图保持器( 父对象:视图组, 视图类型:Int ):BaseViewHolder{ Log.e(标记“onCreateViewHolder:1”) 报税表持有人( ItemcurrencymenuBinding.充气( LayoutFlater.from(父上下文), 父母亲 假的 ) ) } 覆盖BindViewHolder( 持有者:BaseViewHolder, 职位:Int ) { Log.e(标记“onCreateViewHolder:1”) 持有者绑定(当前列表[位置]) } 内部类持有者(私有val绑定:ItemcurrencymenuBinding): BaseViewHolder(binding.root){ 覆盖趣味绑定(项目:CurrencyRoomItem){ binding.item=项目 binding.btnCurrency.setOnClickListener{ viewModel.goToRoom(item.id!!) Paper.book().write(Const.SAVE_ID,item.ID) } } }_Java_Android_Android Layout_Kotlin_Mvvm - Fatal编程技术网

Java 如何传递身份证正确吗?我没有';我不明白这个错误? /****这里是我列表中的适配器*****/ 类CurrencyMenuAdapter( var viewModel:MainViewModel, var currencyList:ObservableList):ObservableRecycleServiceAdapter(currencyList){ private val TAG=“CurrencyMenuAdapter” private val model=MainViewModel() 覆盖视图保持器( 父对象:视图组, 视图类型:Int ):BaseViewHolder{ Log.e(标记“onCreateViewHolder:1”) 报税表持有人( ItemcurrencymenuBinding.充气( LayoutFlater.from(父上下文), 父母亲 假的 ) ) } 覆盖BindViewHolder( 持有者:BaseViewHolder, 职位:Int ) { Log.e(标记“onCreateViewHolder:1”) 持有者绑定(当前列表[位置]) } 内部类持有者(私有val绑定:ItemcurrencymenuBinding): BaseViewHolder(binding.root){ 覆盖趣味绑定(项目:CurrencyRoomItem){ binding.item=项目 binding.btnCurrency.setOnClickListener{ viewModel.goToRoom(item.id!!) Paper.book().write(Const.SAVE_ID,item.ID) } } }

Java 如何传递身份证正确吗?我没有';我不明白这个错误? /****这里是我列表中的适配器*****/ 类CurrencyMenuAdapter( var viewModel:MainViewModel, var currencyList:ObservableList):ObservableRecycleServiceAdapter(currencyList){ private val TAG=“CurrencyMenuAdapter” private val model=MainViewModel() 覆盖视图保持器( 父对象:视图组, 视图类型:Int ):BaseViewHolder{ Log.e(标记“onCreateViewHolder:1”) 报税表持有人( ItemcurrencymenuBinding.充气( LayoutFlater.from(父上下文), 父母亲 假的 ) ) } 覆盖BindViewHolder( 持有者:BaseViewHolder, 职位:Int ) { Log.e(标记“onCreateViewHolder:1”) 持有者绑定(当前列表[位置]) } 内部类持有者(私有val绑定:ItemcurrencymenuBinding): BaseViewHolder(binding.root){ 覆盖趣味绑定(项目:CurrencyRoomItem){ binding.item=项目 binding.btnCurrency.setOnClickListener{ viewModel.goToRoom(item.id!!) Paper.book().write(Const.SAVE_ID,item.ID) } } },java,android,android-layout,kotlin,mvvm,Java,Android,Android Layout,Kotlin,Mvvm,} /ong>/ // /*********************************************************************************************/ /这里是ViewModel/ private lateinit var model: MainViewModel private lateinit var alertDialog: AlertDialog var dialog: Dialog? = null override fun

} /ong>/ // /*********************************************************************************************/

/这里是ViewModel/

private lateinit var model: MainViewModel
private lateinit var alertDialog: AlertDialog
var dialog: Dialog? = null
override fun hideLogoutDialog() {
    alertDialog.dismiss()
}

var loginResponse = ObservableField<LoginResponse>()
override fun town(groupId: String) {

    startActivity(Intent(this@MainActivity, CurrencyRoomActivity::class.java))
    finish()
}
类MainViewModel:BaseViewModel(){

var firstName=observeField()
var lastName=observeField()
var userEmail=observeField()
var phoneNumber=observeField()
var listRoom=observearraylist()
lateinit变量id:字符串
private var useCase=getcurrencesmenusecase()
初始化{
}
fun goToRoom(组ID:字符串){
getNavigator()!!.town(groupId)
}
/视图模型/

private lateinit var model: MainViewModel
private lateinit var alertDialog: AlertDialog
var dialog: Dialog? = null
override fun hideLogoutDialog() {
    alertDialog.dismiss()
}

var loginResponse = ObservableField<LoginResponse>()
override fun town(groupId: String) {

    startActivity(Intent(this@MainActivity, CurrencyRoomActivity::class.java))
    finish()
}
/*****活动到此结束*****/

类MainActivity:BaseActivity(),MainNavigator{

var firstName = ObservableField<String>()
var lastName = ObservableField<String>()
var userEmail = ObservableField<String>()
var phoneNumber = ObservableField<String>()
var listRoom= ObservableArrayList<CurrencyRoomItem>()
lateinit var id :String
private var useCase = GetCurrenciesMenuUseCase()
init {
}
fun goToRoom(groupId:String){
  getNavigator()!!.town(groupId)
}
private lateinit var模型:MainViewModel
私有lateinit var alertDialog:alertDialog
变量对话框:对话框?=null
覆盖乐趣hideLogoutDialog(){
alertDialog.discouse()命令
}
var loginResponse=observeField()
覆盖娱乐城(groupId:String){
星触觉(意图)(this@MainActivity,CurrencyRoomActivity::class.java))
完成()
}
/活动/

private lateinit var model: MainViewModel
private lateinit var alertDialog: AlertDialog
var dialog: Dialog? = null
override fun hideLogoutDialog() {
    alertDialog.dismiss()
}

var loginResponse = ObservableField<LoginResponse>()
override fun town(groupId: String) {

    startActivity(Intent(this@MainActivity, CurrencyRoomActivity::class.java))
    finish()
}
/这里是BaseViewModel/

private lateinit var model: MainViewModel
private lateinit var alertDialog: AlertDialog
var dialog: Dialog? = null
override fun hideLogoutDialog() {
    alertDialog.dismiss()
}

var loginResponse = ObservableField<LoginResponse>()
override fun town(groupId: String) {

    startActivity(Intent(this@MainActivity, CurrencyRoomActivity::class.java))
    finish()
}
抽象类BaseViewModel:ViewModel(){
私有变量mCompositeDisposable:CompositeDisposable=CompositeDisposable();
私有lateinit var mNavigator:WeakReference
有趣的getNavigator():N{
返回mNavigator?.get()
}
趣味设置导航器(导航器:N){
this.mNavigator=WeakReference(导航器)
}
覆盖有趣的onCleared(){
mCompositeDisposable.dispose()
super.onCleared()
}
fun getCompositeDisposable():CompositeDisposable{
返回mCompositeDisposable
}
}

/基本视图模型/

private lateinit var model: MainViewModel
private lateinit var alertDialog: AlertDialog
var dialog: Dialog? = null
override fun hideLogoutDialog() {
    alertDialog.dismiss()
}

var loginResponse = ObservableField<LoginResponse>()
override fun town(groupId: String) {

    startActivity(Intent(this@MainActivity, CurrencyRoomActivity::class.java))
    finish()
}
//

private lateinit var model: MainViewModel
private lateinit var alertDialog: AlertDialog
var dialog: Dialog? = null
override fun hideLogoutDialog() {
    alertDialog.dismiss()
}

var loginResponse = ObservableField<LoginResponse>()
override fun town(groupId: String) {

    startActivity(Intent(this@MainActivity, CurrencyRoomActivity::class.java))
    finish()
}
//这里是爱洛


/

该错误意味着在mNavigator具有值之前使用它,表示您“承诺”永远不会出现这种情况

private lateinit var model: MainViewModel
private lateinit var alertDialog: AlertDialog
var dialog: Dialog? = null
override fun hideLogoutDialog() {
    alertDialog.dismiss()
}

var loginResponse = ObservableField<LoginResponse>()
override fun town(groupId: String) {

    startActivity(Intent(this@MainActivity, CurrencyRoomActivity::class.java))
    finish()
}
在调用setNavigator之前调用getNavigator(您从未调用setNavigator)

修复它,你只需在调用GETNavigor之前调用StaveNavigor。它会修复你的特定问题,但是让Navigor和StaveNavigor看起来有点奇怪,也许考虑在构造器

中初始化它。 编辑:

我想您需要传递MainActivity,因为它将MainNavigator扩展到setNavigator。在这种情况下,只需在MainActivity中使用ViewModel变量并调用

abstract class BaseViewModel<N> : ViewModel() {
private  var mCompositeDisposable: CompositeDisposable = CompositeDisposable();
private lateinit var mNavigator: WeakReference<N>

fun getNavigator(): N? {
    return mNavigator?.get()
}

fun setNavigator(navigator: N) {
    this.mNavigator = WeakReference(navigator)
}
override fun onCleared() {
    mCompositeDisposable.dispose()
    super.onCleared()
}

fun getCompositeDisposable(): CompositeDisposable {
    return mCompositeDisposable
}

MainActivity扩展了MainNavigator,MainViewModel扩展了BaseViewModel,这样应该可以工作了

,当我调用它时,我可以在参数中传递什么?老实说,我说不出来,似乎MainActivity在扩展MainNavigator时必须传递,但我不知道您试图遵循的教程是什么,我会使用新的navigati之类的东西在组件上。但是,检查更新的答案,这应该也可以。@mohamedbellar updated抱歉:/getNavigator调用之前需要调用setNavigator的相同错误,当您在onCreate中调用setNavigator,并且仅在onClickListener中调用getNavigator时,错误不应该发生。您可以对您的code正在尝试做什么?你也可以在这里分享问题中的错误信息,而不仅仅是一个链接吗