0
votes

Comment obtenir une chaîne de modifier le texte et passer à une nouvelle activité?

J'essaie de collecter l'entrée de l'utilisateur et de le transmettre à une autre activité et de l'afficher à l'aide de la vue textuelle.

J'ai essayé d'utiliser les fonctions GetText () et Tostring () et en passant l'intention, mais lors de l'exécution du programme. Les chaînes qui doivent contenir l'entrée de l'utilisateur ne sont pas affichées correctement. p>

protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main_in);

            //Collect user inputs and store them in strings
            noun1 = (EditText)findViewById(R.id.noun1);
            pluralNoun =  (EditText)findViewById(R.id.pluralNoun);
            noun2 = (EditText)findViewById(R.id.noun2);
            place = (EditText)findViewById(R.id.place);
            adjective = (EditText)findViewById(R.id.adjective);
            noun3 = (EditText)findViewById(R.id.noun3);

            firstNoun = noun1.getText().toString();
            nounPlural = pluralNoun.getText().toString();
            secondNoun = noun2.getText().toString();
            inputPlace = place.getText().toString();
            inputAdjective = adjective.getText().toString();
            thirdNoun = noun3.getText().toString();

            madLib ="Be kind to your " + firstNoun + "-footed " + pluralNoun + "\n" +
                    "For a duck may be somebody`s " + secondNoun + ",\n" +
                    "Be kind to your " + pluralNoun + " in " + inputPlace + "\n" +
                    "Where the weather is always " + inputAdjective + ".\n" +
                    "\n" +
                    "You may think that this is the " + thirdNoun + ",\n" +
                    "Well it is.\t";

        }



        public void createStory(View view) {
            Intent myIntent = new Intent(MainActivityIn.this,
                    MainActivityOut.class);
            myIntent.putExtra("story",madLib);
            startActivity(myIntent);
        }


2 commentaires

Dupliqué possible de Comment passer Deux cordes d'une activité à une autre activité à Android


Salut Yabba, bienvenue à vous, s'il vous plaît avoir une recherche avant de poser une question. Nous avons déjà beaucoup de questions pour cette tâche :)


3 Réponses :


0
votes

Vous pouvez récupérer votre strong> string forte> dans votre autre activité appelée MainActivityOut.Class fort> en utilisant le code ci-dessous et transmettez cette chaîne à votre vue texte.

String madLib = getIntent().getStringExtra("story");
yourTextView.setText(madLib);


0 commentaires

0
votes

Dans MATLIB Une partie de la variable que vous appelez ne sont pas une chaîne mais Editext, c'est pourquoi vous avez ce résultat étrange. Comme pluralnoun ... Essayez cette convention de dénomination, nom tout editext et ..., tout TextViett ..., tout bouton BTN ..., tout imageView iv ... de cette façon, vous pouvez éviter de confusion sur vos variables.


0 commentaires

0
votes

Vous passez EITITTEXT CODE> STRT> Objet Inside String

madLib ="Be kind to your " + firstNoun + "-footed " + nounPlural+ "\n" +
                        "For a duck may be somebody`s " + secondNoun + ",\n" +
                        "Be kind to your " + nounPlural + " in " + inputPlace + "\n" +
                        "Where the weather is always " + inputAdjective + ".\n" +
                        "\n" +
                        "You may think that this is the " + thirdNoun + ",\n" +
                        "Well it is.\t";


0 commentaires