簡體   English   中英

如何解決 Android Studio 中的重新聲明錯誤

[英]How do I resolve a Redeclaration Error in Android Studio

此代碼適用於 android 模擬器上的按鈕。 但是,當我將這段代碼放在主要的 activity.kt 中時,它會給我多個錯誤。 我遇到的第一個錯誤是主活動第 9 行的重新聲明錯誤

package com.example.android.justjava

import android.R
import android.os.Bundle
import android.support.v7.app.ActionBarActivity
import android.view.View
import android.widget.TextView

// This activity displays an order form to order coffee.
class MainActivity : ActionBarActivity() {
    protected fun onCreate(savedInstanceState: Bundle) {
      super.onCreate(savedInstanceState)
      setContentView(R.layout.activity_main)
    }

    // this method is called when the order button is clicked.
    fun submitOrder(view: View) {
      display(1)
    }

    // This method displays the given quantity value on the screen.
    private fun display(number: Int) {
      val quantityTextView = findViewById(R.id.quantity_text_view as TextView
      quantityTextView.text = "" + number
    }
}

此活動顯示用於訂購咖啡的訂購單。

public class MainActivity extends ActionBarActivity {
   @Override
   protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);
   }

   // This method is called when the order button is clicked.
   public void submitOrder(View view) {
       display(1);
   }

   // This method displays the given quantity value on the screen.
   private void display(int number) {
      TextView quantityTextView =(TextView) findViewById (R.id.quantity_text_view);
      quantityTextView.setText("" + number);
   }
}
  1. 文件選項卡 -> 使緩存無效/重新啟動(然后從將出現的對話框中選擇無效並重新啟動)
  2. 構建選項卡 -> 清理項目 3.構建選項卡 -> 重建

這應該可以解決問題。 這個解決方案與@Ehsan_Haghdoust 解決方案相同,但讓 Android Studio 為我做這件事,而不是我自己做。

您面臨的問題是您有兩個同名的活動MainActivity - 一個在 Java 中,第二個在 Koltin 中。 兩個類(本例中的活動)都編譯到同一個應用程序中 - 您有 2 個同名符號。

是的,在編譯器完成后,Koltin 和 Java 看起來是一樣的 :)

這個問題是 6 個月前的,但我寫了我的答案,因為其他人將來會遇到這個問題。 我遇到了這個錯誤的挑戰,我檢查了其他人建議的所有可能的方法,最后我不得不刪除構建文件夾

項目文件夾/

項目文件夾/應用程序/

手動並再次重建項目。

就我而言,我在調試模式下運行應用程序,並為調試生成了一個方向類。 然后我嘗試在發布模式下生成一個簽名的 APK。 然后在相同的包中為發布模式生成了一個類似的類,這導致了問題。 我手動刪除了 Java 文件夾(根)中的調試文件夾,構建成功。

在此處輸入圖片說明

構建 -> Select 構建變體。 它處於調試狀態,我只是將其更改為發布模式並完成了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM