How do you pass a string from one activity to another? [duplicate]
Как передать строку из одного действия в другое?
Мне интересно, как передать и прочитать строку, которая находится в одном действии, из другого действия. У меня есть два действия. Я назову их Activity1 и Activity2. У меня есть строка в Activity1 с именем course. Я хочу прочитать эту строку в Activity2.
Я пытался это сделать, но строка вышла пустой.
public class Activity2 extends Activity1 {
Я видел, как люди используют функцию Intent, но я не мог понять, как ее использовать.
Есть предложения? Спасибо!
Переведено автоматически
Ответ 1
Передавайте значения, используя intents.
В вашем первом действии
Intent i= newIntent("com.example.secondActivity"); i.putExtra("key",mystring); // for explicit intents // Intent i= new Intent(ActivityName.this,SecondActivity.class); // parameter 1 is the key // parameter 2 is the value // your value startActivity(i);
В вашем втором действии извлеките ее.
Bundleextras= getIntent().getExtras(); if (extras != null) { Stringvalue= extras.getString("key"); //get the value based on the key }
Чтобы передать пользовательские объекты, вы можете взглянуть на эту ссылку
Вы на правильном пути - вы используете намерение для запуска второго действия. Все, что вам нужно сделать, это добавить, intent.putExtra("title", stringObject); где stringObject - это строка, которую вы хотите передать, а title - это имя, которое вы хотите присвоить этому объекту. Вы используете это имя для ссылки на объект, переданный во втором действии, следующим образом: