【问题标题】:Type mismatch: Required: Context, Found: Intent类型不匹配:必需:上下文,找到:意图
【发布时间】:2019-06-15 09:23:45
【问题描述】:

我创建了一个自定义PreferenceClickPreference

class ClickPreference(context: Context, attrs: AttributeSet) : Preference(context, attrs), View.OnClickListener {

    override fun onBindViewHolder(holder: PreferenceViewHolder?) {
        super.onBindViewHolder(holder)
        val box = holder?.itemView
        box?.setOnClickListener(this)
    }

    override fun onClick(v: View?) {
        action(title)
    }

    fun action(title: CharSequence){
        when (title){
            "email" -> {
                ...
            }
            "Logout" -> {
                LoginManager.getInstance().logOut()
                val intent = Intent(context, MainActivity::class.java) // context is from getContext()
                startActivity(intent)
            }
        }
    }


}

但是我在startActivity() 上收到此错误:

我不明白为什么它是错误的,因为它是有效的Intent constructor

有什么想法吗?

【问题讨论】:

    标签: java android kotlin


    【解决方案1】:

    试试这个:

    val intent = Intent(context, MainActivity::class.java)
    context.startActivity(intent)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多