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.gradleapp) 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
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…