Допустим, я передаю из активности 1 в активность 3 некоторое значение. Затем я передаю из активности 2 в активность 3 некоторое значение. Каким образом затем я могу получить отдельного значение из активности 1 и отдельно значение из активности 2 в третьей, если код вида Intent intent = getIntent(); проинициализирует переменную intent объектом, полученным из последней (второй) активности?
Передаю из первой активности значение в третью, затем перехожу ко второй активности.
public class TestPageOne extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_test_page_one);
ListView spheres = (ListView) findViewById(R.id.list10);
String[] spheresArray = getResources().getStringArray(R.array.spheres);
ArrayAdapter<String> adapter = new ArrayAdapter(this,
R.layout.listviewtext, spheresArray);
spheres.setAdapter(adapter);
spheres.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Intent intent = new Intent();
intent.putExtra("sphere", position);
setResult(RESULT_OK);
finish();
}
});
}
public void oc10(View view) {
Intent intent = new Intent(TestPageOne.this, TestPageTwo.class);
startActivity(intent);
finish();
}
@Override
public void onBackPressed() {
Intent intent = new Intent(TestPageOne.this, MainActivity.class);
startActivity(intent);
finish();
}
}
Перейдя во вторую активность, передаю из нее другое значение в третью активность, затем перехожу в третью активность.
public class TestPageTwo extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_test_page_two);
ListView kinds = (ListView) findViewById(R.id.list20);
String[] kindsArray = getResources().getStringArray(R.array.kinds);
ArrayAdapter<String> adapter = new ArrayAdapter(this,
R.layout.listviewtext, kindsArray);
kinds.setAdapter(adapter);
kinds.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Intent intent = new Intent();
intent.putExtra("kind", position);
setResult(RESULT_OK);
finish();
}
});
}
public void oc20(View view) {
Intent intent = new Intent(TestPageTwo.this, Result.class);
startActivity(intent);
finish();
}
@Override
public void onBackPressed() {
Intent intent = new Intent(TestPageTwo.this, TestPageOne.class);
startActivity(intent);
finish();
}
}
В третьей активности обрабатываю два полученных значения
public class Result extends AppCompatActivity {
int sphere, kind;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_result);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode == RESULT_OK) {
int sphere = data.getIntExtra("sphere", 0);
int kind = data.getIntExtra("kind", 0);
} else {
Toast.makeText(this, "Wrong result", Toast.LENGTH_SHORT).show();
}
}
@Override
public void onBackPressed() {
Intent intent = new Intent(Result.this, TestPageTwo.class);
startActivity(intent);
finish();
}
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Всем добрый деньИзучаю JSF, и в ходе построения страницы возникли несколько вопросов,на которые найти какой то правильный ответ не смог