我是 android studio 的新手,我正在嘗試制作一個簡單的計算器,它接受一個字符串并返回一個值。問題是,當編寫代碼來初始化“Button”對象時,它認為我正在嘗試調用一個函數。它顯示一個錯誤,內容如下:Function invocation 'Button(...) expected但我并不想調用按鈕的函數,只是創建一個 Button 對象。這是我的主要活動文件:package com.example.myfirstcalcimport android.os.Bundle;import android.widget.Button;import androidx.appcompat.app.AppCompatActivity;class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main) Button calcBtn = (Button) findViewById(R.id.calculateBtn); }}這是activity_main.xml:<?xml version="1.0" encoding="utf-8"?><androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> <EditText android:id="@+id/expressionEditText" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="124dp" android:ems="10" android:hint="Enter an expression" android:inputType="textPersonName" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" app:layout_constraintVertical_bias="0.0" />
2 回答

慕尼黑5688855
TA貢獻1848條經驗 獲得超2個贊
該問題是由于語法不正確造成的。Java
您正在混合和 的語法Kotlin
要在 中正確寫入Kotlin
,請更改以下行:
Button?calcBtn?=??(Button)?findViewById(R.id.calculateBtn);
到:
val?calcBtn?=??findViewById(R.id.calculateBtn)?as?Button

慕神8447489
TA貢獻1780條經驗 獲得超1個贊
在 Kotlin 中你還可以這樣做:
val calcBtn = findViewById<Button>(R.id.calculateBtn)
添加回答
舉報
0/150
提交
取消