冗余覆盖方法

时间:2019-07-12 13:42:06

标签: android android-fragments kotlin androidx

我无法覆盖片段的onviewcreated方法

这是我的代码

import androidx.lifecycle.ViewModelProviders
import android.os.Bundle
import androidx.fragment.app.Fragment
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup

import com.ab.R

class HomeFragment : Fragment() {

    companion object {
        fun newInstance() = HomeFragment()
    }

    private lateinit var viewModel: HomeViewModel

    override fun onCreateView(
        inflater: LayoutInflater, container: ViewGroup?,
        savedInstanceState: Bundle?
    ): View? {
        return inflater.inflate(R.layout.home_fragment, container, false)
    }

    override fun onActivityCreated(savedInstanceState: Bundle?) {
        super.onActivityCreated(savedInstanceState)
        viewModel = ViewModelProviders.of(this).get(HomeViewModel::class.java)
        // TODO: Use the ViewModel
    }

    override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
        super.onViewCreated(view, savedInstanceState)
    }
}

更少的冗余覆盖方法... 检查信息:此检查报告了多余的改写修饰符,可以忽略

2 个答案:

答案 0 :(得分:2)

Kotlin对大多数冗余替代都执行此操作,因此您可以完全删除这些替代,因为它们无论如何都不会做任何事情(除了调用超级方法之外)。如我在评论中所说,向这些替代中添加其他逻辑和代码将停止问题,只是做出完整的答案。

答案 1 :(得分:1)

这是因为您没有在此方法中执行任何操作,而仅调用了super方法。这就是为什么它是多余的。 只需将一些代码添加到您的onViewCreated方法中,它将停止显示Redundant方法。