2016-01-05 2 views
2

У меня есть два объекта EditText в моем первом действии. Я хочу, чтобы они оба значения, когда я перехожу к следующему действию. Предположим, что объекты EditText являются inp1, inp2, и они могут принимать только числа. , пожалуйста, укажите, как я могу добавить их значения в int Intent object и как я извлечу их значения в файле .java моей следующей активности.Как добавить/передать несколько значений объекту Intent?

+1

Дубликат http://stackoverflow.com/questions/2091465/how-do-i-pass-data-between-activities-on-android – headsvk

+0

любезно сделайте Google сначала перед публикацией :-) – Nisarg

ответ

1

Здесь мы идем, ваш код будет выглядеть,

Sender Side:

Intent myIntent = new Intent(A.this, B.class); 
myIntent.putExtra("intVariableName1", intValue1); 
myIntent.putExtra("intVariableName2", intValue2); 
startActivity(myIntent); 

Receiver Side:

Intent mIntent = getIntent(); 
int intValue1 = mIntent.getIntExtra("intVariableName1", 0); 
int intValue2 = mIntent.getIntExtra("intVariableName2", 0); 

Надеется, что это помогает.

0

Используйте этот код

Intent intent = new Intent(first.this, Second.class); 
Bundle extras = new Bundle(); 
extras.putString("value1",String.valueof(inp1.getText().toString())); 
extras.putString("value2",String.valueof(inp2.getText().toString())); 
intent.putExtras(extras); 
startActivity(intent); 

Тогда в вашей второй активности OnCreate()

Intent intent = getIntent(); 
Bundle extras = intent.getExtras(); 
String value1 = extras.getString("value1"); 
String value2 = extras.getString("value2"); 
0

Чтобы сделать вещи проще и многоразовые вы можете сделать свой собственный замысел, как это

public class MyIntent extent Intent{ 
    private static final String FIRST_VALUE; 
    private static final String SECOND_VALUE; 

    public MyIntent(Context context, String firstValue, String secondValue){ 
     super(context,MySecondActivity.class); 
     putExtra(FIRST_VALUE, firstValue); 
     putExtra(SECOND_VALUE, secondValue); 
    } 

    public String getFirstValue(){ 
     getStringExtra(FIRST_VALUE); 
    } 

    public String getSecondValue(){ 
     getStringExtra(SECOND_VALUE); 
    } 
} 

Отправитель:

startActivity(new MyIntent(this,"FirstString", "SecondString")); 

Receiver Side:

MyIntent myIntent = (MyIntent)getIntent(); 
String firstValue = myIntent.getFirstValue(); 
String secondValue = myIntent.getSecondValue();