首页 > 解决方案 > 未解决的参考:activity_main

问题描述

我正在尝试从一本书中研究这个例子。我不断收到“ Unresolved reference: activity_main”错误。我对Kotlin and Android Studio. 代码如下所示。

import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.view.MotionEvent
import android.view.View
import android.widget.TextView


import kotlinx.android.synthetic.main.activity_main.*

class MainActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        activity_main.setOnTouchListener {_, m: MotionEvent ->
            handleTouch(m)
            true
        }

    }

你能帮我解释一下为什么 Android Studio 会抛出这个错误吗?我错过了进口吗?

标签: androidkotlin

解决方案


是的,activity_main是您的布局文件,您可以在res/layout项目内的文件夹中找到它。

            activity_main.setOnTouchListener {_, m: MotionEvent ->
                handleTouch(m)
                true
            }

activity_main如果在您的文件内部没有带有 id 的视图,则此行没有意义activity_main。因此,如果您想在布局内的根视图中添加触摸侦听器,只需打开activity_main文件并添加android:id="@+id/root"到您的顶视图定义中。此外,更改activity_main.setOnTouchListenerroot.setOnTouchListener. Android Studio 将帮助您导入合成字段


推荐阅读