Bonjour à tous !
Je suis nouveau dans la programmation, et j'ai choisi comme langage d'apprentissage Kotlin (sur Android Studio).
J'ai suivi quelques tutos/cours pour m'initier mais j'en suis qu'au début.
Pour apprendre, j'ai personnellement besoin de faire, la théorie c'est bien, mais je préfère la pratique.
Bref, pour me lancer dans mon apprentissage, j'ai décidé de commencer par un petit jeu, et les problème commence
Alors voila, j'ai un code qui est déclaré dans une var, le but du jeu c'est de trouver le code.
Pour l'instant j'ai créé un bouton, quand j'appuye dessus, ca lance le déroulement du programme, tester les combinaisons, de 0000 à 9999, et si ça tombe sur le bon chiffre sa s'arrete.
Lors des test (un par un de 0000 à 9999 ou de 9999 à 0000 selon si switch on ou non), j'aimerai qu'il s'affiche le resultat dans le textview, mais il s'affiche seulement lorsqu'il trouve le code, dans le if.
Pourtant j'ai bien la sortie prinln à chaque test.
J'ai essayé de sortir la fonction qui permet d'actualiser le texte du textView, en dehors de onCreate, puis en dehors de onCreate qui renvoi dans onCreate, fonctionne pas non plus..
Quelqu'un pourait m'eclairer sur une solution ?
Merci de m'avoir lu, voici mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82 package com.example.cmgiftxx import android.annotation.SuppressLint import android.content.Intent import android.os.Bundle import android.widget.* import androidx.appcompat.app.AppCompatActivity import java.util.* class MainActivity : AppCompatActivity() { //Declaration de mon bouton pour Bouton Changer lateinit var boutonChanger : Button //Declaration de mon bouton pour Bouton Changer lateinit var boutonPlay : Button @SuppressLint("UseSwitchCompatOrMaterialCode") override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) //initialisation Bouton Changer d'Activity ------------------------------------------------- boutonChanger = findViewById(R.id.button2) // creation de notre intent val monIntent : Intent = Intent(this, MainActivity2::class.java) //clic sur le bouton boutonChanger.setOnClickListener { startActivity(monIntent) } //Fin Bouton Changer d'Acctivity ----------------------------------------------------------- // Defile Code ------------Déroulement/Mécanisme-------------------------------------------- var code: Int = 950 code = ("%04d".format(code).toInt()) var facteurVitesse: Long = 250 boutonPlay = findViewById(R.id.button) boutonPlay.setOnClickListener { //SWITCH ACTIF OU NON/////////////////////////////////////////////////////////////////// val sw1 = findViewById<Switch>(R.id.switch1) var sensCrack:IntProgression? if (sw1.isChecked) { println("Switch on") sensCrack = 9999 downTo 0 } else { println("Switch off") sensCrack = 0 .. 9999 } //////////////////////////////////////////////////////////////////////////////////////// val tVX: TextView = findViewById<TextView>(R.id.textViewX) as TextView run breaker@ { (sensCrack).forEach { x -> //Code trouvé if (x.toString() == code.toString()){ println("Votre code est %04d".format(x)) tVX.text = x.toString() return@breaker //Code non trouvé }else { // mimic break@forEach // "%04d".format(x) <---- Pour afficher au format "xxxx" ( 4 chiffres) println("%04d".format(x)) tVX.text = x.toString() Thread.sleep(facteurVitesse) } } } } // Fin Defile Code -------------Fin Déroulement/Mécanisme ---------------------------------- } }
Partager