首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么我的应用程序一直停止并显示错误

为什么我的应用程序一直停止并显示错误
EN

Stack Overflow用户
提问于 2020-06-07 03:45:54
回答 1查看 32关注 0票数 0

我尝试创建水平recyclerView和底部导航栏,我为RecyclerView创建了horizontal_card_item.xml、HorizontalView.kt (类)、DataSource.kt和HorizontalViewAdapter文件。

下面是我的主Activity.kt代码

代码语言:javascript
复制
class MainActivity(val myData: Array<String>) : AppCompatActivity() {

    private lateinit var horizontalViewAdapter: HorizontalViewAdapter

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        val navView: BottomNavigationView = findViewById(R.id.nav_view)

        val navController = findNavController(R.id.nav_host_fragment)
        // Passing each menu ID as a set of Ids because each
        // menu should be considered as top level destinations.
        val appBarConfiguration = AppBarConfiguration(setOf(
                R.id.navigation_home, R.id.navigation_dashboard, R.id.navigation_notifications))
        setupActionBarWithNavController(navController, appBarConfiguration)
        navView.setupWithNavController(navController)

        initRecyclerView()
        addDataSet()
    }

    private fun initRecyclerView(){

        val recycler_view = null
        recycler_view.apply {
            var layoutManager = LinearLayoutManager(this@MainActivity)
            val topSpacingDecorator = TopSpacingItemDecoration(30)
            addItemDecoration(topSpacingDecorator)
            horizontalViewAdapter = HorizontalViewAdapter()
            var adapter = horizontalViewAdapter
        }
    }

    private fun addDataSet(){
        val data = DataSource.createDataSet()
        //HorizontalViewAdapter.SubmitList(data)
    }

    private fun addItemDecoration(topSpacingDecorator: TopSpacingItemDecoration) {

    }


}

这是我的应用程序显示的logcat错误

代码语言:javascript
复制
E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.riddhi.rift, PID: 9780
    java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.riddhi.rift/com.riddhi.rift.MainActivity}: java.lang.InstantiationException: java.lang.Class<com.riddhi.rift.MainActivity> has no zero argument constructor
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2843)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3048)
        at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78)
        at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108)
        at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1808)
        at android.os.Handler.dispatchMessage(Handler.java:106)
        at android.os.Looper.loop(Looper.java:193)
        at android.app.ActivityThread.main(ActivityThread.java:6669)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
     Caused by: java.lang.InstantiationException: java.lang.Class<com.riddhi.rift.MainActivity> has no zero argument constructor
        at java.lang.Class.newInstance(Native Method)
        at android.app.AppComponentFactory.instantiateActivity(AppComponentFactory.java:69)
        at androidx.core.app.CoreComponentFactory.instantiateActivity(CoreComponentFactory.java:45)
        at android.app.Instrumentation.newActivity(Instrumentation.java:1215)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2831)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3048) 
        at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78) 
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-06-07 03:50:23

代码语言:javascript
复制
class MainActivity(val myData: Array<String>) : AppCompatActivity() {

应该是:

代码语言:javascript
复制
class MainActivity : AppCompatActivity() {

activity类不能有参数。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62237170

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档