Hilfe mit Kotlin-Code

  • Antworten:5
Petra Ritter
  • Forum-Beiträge: 86

25.06.2022, 15:55:10 via Website

Guten Tag,

Ich habe ein Code-Schnipel gefunden, das auf den ersten Blick interessant aussieht.
Um es auszuprobieren, möchte ist es in einem proof of concept umsetzen.

Da der Code-Schnipdrl aber in Kotlin geschrieben ist und ich noch keine geösse Erfahrung mit Kotlin habe, bin ich nicht ganz sicher ob der Code überhaupt funktioniert.

Der Code sollte für eine String-Resource die Sprache en-GB setzen und den entsprechenden Texten eine TextView einsetzen. Tut er aber nicht.

package ch.ritter.sprachdeklaration

import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.os.LocaleList
import android.widget.TextView

class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val element = findViewById(R.id.speachDec2)

    val locales = LocaleList.forLanguageTags("en-GB")
    val configuration = baseContext.resources.configuration
    configuration.setLocales(locales)
    val context = createConfigurationContext(configuration)

    element.text = context.resources.getString(R.string.eng1)

Bin ich da irgendwie auf den "Holzweg"? Respektive tut der Code gar nicht, das was ich denke er würde es tun?(thinking)
Uns was tut er dann? :?

Liebe Grüsse

Petra

Kommentieren
Pascal P.
  • Admin
  • Forum-Beiträge: 11.288

28.06.2022, 15:19:03 via Website

Hallo Petra,

gibt es denn einen Fehler?
Hast du mal mit dem Debugger geschaut ob der String über die Locale richtig gelesen wird oder das setzen des Textes das Problem ist?
Damit müsstest du zumindest rausbekommen können, an welcher Stelle wir suchen müssen.

LG Pascal //It's not a bug, it's a feature. :) ;)

Hilfreich?
Kommentieren
Jokel
  • Forum-Beiträge: 1.547

29.06.2022, 15:13:56 via Website

Hallo
Eigentlich sollst das reichen um auf die string XML zuzugreifen.

element.text = getString(R.string.eng1)

Hilfreich?
Kommentieren
Geoffrey
  • Forum-Beiträge: 3

15.02.2023, 03:19:42 via Website

Danke für den Beitrag, ist sehr hilfreich, habe ich ausprobiert

Hilfreich?
Kommentieren
Leon Haas
  • Forum-Beiträge: 13

15.02.2023, 04:16:34 via Website

Es ist möglich, dass der Code nicht wie erwartet funktioniert, da es verschiedene Gründe geben kann, warum eine TextView nicht den entsprechenden Text anzeigt. Möglicherweise liegt es an der Implementierung des Codes oder an anderen Faktoren wie der Konfiguration der String-Resource oder der XML-Datei, in der die TextView definiert ist.

Um den Code genauer zu überprüfen, könnte man eine Debugger-Session starten und den Ablauf des Codes Schritt für Schritt nachvollziehen, um eventuelle Fehler zu identifizieren. Zudem könnte es hilfreich sein, sich näher mit der Funktionsweise von Kotlin und Android-Entwicklung auseinanderzusetzen, um besser zu verstehen, was der Code bewirkt und wo mögliche Fehlerquellen liegen könnten.

Hilfreich?
Kommentieren
Leon Haas
  • Forum-Beiträge: 13

15.02.2023, 04:19:09 via Website

Ich sehe keine Syntaxfehler in dem von Ihnen bereitgestellten Code. Allerdings gibt es einen kleinen Tippfehler im Kommentar am Anfang des Codes - "sprachdeklaration" ist falsch geschrieben als "speachdeklaration". Dies ist zwar für die Funktionalität des Codes nicht von Bedeutung, aber es ist immer gut, darauf zu achten, dass die Kommentare korrekt sind und die Schreibweise stimmt.

Hilfreich?
Kommentieren