Как передать значение с одного действия на другое в Android?

Я создал Activity с AutuCompleteTextView [ACTV] и кнопкой. Я ввожу текст в ACTV, затем нажимаю кнопку. После того, как я нажму кнопку, я хочу, чтобы Activity перешла в другое действие. Во втором действии я просто хочу отобразить текст, введенный в ACTV (первой активности) в виде TextView.

Я знаю, как начать вторую операцию, которая выглядит следующим образом:

Intent i = new Intent(this, ActivityTwo.class); startActivity(i); 

Я закодировал это, чтобы получить текст, введенный с ACTV.

 AutoCompleteTextView textView = (AutoCompleteTextView) findViewById(R.id.autocomplete); CharSequence getrec=textView.getText(); 

Мой вопрос здесь в том, как передать «getrec» ​​(после нажатия кнопки) от первого действия до второго. И позже получите «getrec» ​​во втором действии.

Предположим, что я создал класс обработчика событий для кнопки, используя «onClick (View v)»

Solutions Collecting From Web of "Как передать значение с одного действия на другое в Android?"

Вы можете использовать Bundle, чтобы сделать то же самое в Android

Создайте намерение:

 Intent i = new Intent(this, ActivityTwo.class); AutoCompleteTextView textView = (AutoCompleteTextView) findViewById(R.id.autocomplete); String getrec=textView.getText().toString(); //Create the bundle Bundle bundle = new Bundle(); //Add your data to bundle bundle.putString(“stuff”, getrec); //Add the bundle to the intent i.putExtras(bundle); //Fire that second activity startActivity(i); 

Теперь во втором действии извлеките свои данные из пакета:

 //Get the bundle Bundle bundle = getIntent().getExtras(); //Extract the data… String stuff = bundle.getString(“stuff”); 

Стандартный способ передачи данных из одной активности в другую:

Если вы хотите отправить большое количество данных из одной активности в другую, тогда вы можете поместить данные в пакет, а затем передать ее с помощью putExtra() .

 //Create the `intent` Intent i = new Intent(this, ActivityTwo.class); String one="xxxxxxxxxxxxxxx"; String two="xxxxxxxxxxxxxxxxxxxxx"; //Create the bundle Bundle bundle = new Bundle(); //Add your data to bundle bundle.putString(“ONE”, one); bundle.putString(“TWO”, two); //Add the bundle to the intent i.putExtras(bundle); //Fire that second activity startActivity(i); 

В противном случае вы можете putExtra() использовать putExtra() с намерением отправить данные и getExtra() для получения данных.

 Intent i=new Intent(this, ActivityTwo.class); i.putExtra("One",one); i.putExtra("Two",two); startActivity(i); 

Это тривиально, используйте Intent.putExtra для передачи данных в действие, которое вы запускаете. Используйте Bundle.getExtra для его получения.

Есть много таких вопросов: https://stackoverflow.com/search?q=How+to+pass+a+value+from+one+Activity+to+another+in+Android обязательно используйте поиск в следующий раз ,

Реализуйте таким образом

 String i="hi"; Intent i = new Intent(this, ActivityTwo.class); //Create the bundle Bundle b = new Bundle(); //Add your data to bundle b.putString(“stuff”, i); i.putExtras(b); startActivity(i); 

Начните это второе activity , внутри этого class чтобы использовать значения Bundle, используйте этот код

 Bundle bundle = getIntent().getExtras(); String text= bundle.getString("stuff"); 

Я знаю, что это уже поздно, но если переменную нужно получить доступ и изменить по нескольким намерениям, самый простой способ – использовать одноэлементный путь. Определение глобальной переменной, которая будет доступна для всех целей.