Android Studio Kotlin "Unresolved reference: textView1" hatası

Katılım
9 Mart 2017
Mesajlar
1.876
Çözümler
12
Aktivite dosyasına textView ekliyorum id veriyorum textView1 şeklinde. TextView'e kod tarafından erişmek için build.gradle dosyasına "id ‘kotlin-android-extensions’" ifadesini ekliyorum. Sync'e tıklıyorum sorun yok. Projeyi Emulator üzerinde çalıştırmak için Play butonuna basıyorum ama hata veriyor. Artık bu kod desteklenmiyor.
Hata:
"The 'kotlin-android-extensions' Gradle plugin is no longer supported. Please use this migration guide (Migrate from Kotlin synthetics to Jetpack view binding | Android Developers) to start working with View Binding (View Binding | Android Developers) and the 'kotlin-parcelize' plugin."

@bitwise hocam bana yardımcı olur musun? Umarım iyisindir. 🙂

Kendi sorunuma kendim çözüm buldum. 8 gündür uğraşıyorum imanım gevredi vallaha ha. 😆😂😃
Çözüm:
build.gradle:)app) dosyasına gideceğiz. Sol tarafta. buildTypes kod bloğu var onu tespit edeceğiz. Onun içerisinde debug ve release var. Aşağıdaki gibi kodları oraya ekleyeceğiz.
Kod:
release {
            debuggable false
            shrinkResources true
            minifyEnabled true
            //içine eklenecek. eklerken hali hazırda zaten var olanları silmeyin.
}
debug {
            debuggable true
            shrinkResources true
            minifyEnabled true
            //içine eklenecek. eklerken hali hazırda zaten var olanları silmeyin.
}

Bunu unuttum.
Kod:
buildFeatures{
        viewBinding true
} //burayıda android kod bloğunun içerisine koyacağız.

Kod:
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.view.View
import tr.com.huseyinaydin.databinding.ActivityMainBinding

class MainActivity : AppCompatActivity() {

    private lateinit var binding: ActivityMainBinding

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        binding = ActivityMainBinding.inflate(layoutInflater)
        val view = binding.root
        setContentView(view)
    }

    fun tikla(view: View){
        binding.textView1.setText("Selam")
    }
}
 
Son düzenleme:
bu eklediğiniz binding eklentisini her proje için yapmak zorunda kalıyorum bunun başka yolu varmı acaba? konuyla ilgili konu açmıştım ama hiç bir cevap alamadım
 

Technopat Haberler

Yeni konular

Geri
Yukarı