Подтвердить что ты не робот

Простой пример для Intent и Bundle

Я новичок в андроиде, почти не владея Java и XML. Я изучаю это через pdf файлы, которые я получаю в сети. Я узнал о Тосте, немного о намерениях, но я не мог ничего понять о Связках. Я понял, что они используются для передачи данных из одной активности в другую, но я не могу это реализовать.

просьба дать простой пример для реализации того же самого.

как, например, я только что создал два действия: Main_Activity и Other_Activity, и я еще ничего не сделал с ними.

Просьба привести простейший пример, чтобы я мог научиться реализовывать.

Спасибо заранее!

4b9b3361

Ответ 1

Например:

В MainActivity:

Intent intent = new Intent(this, OtherActivity.class);
intent.putExtra(OtherActivity.KEY_EXTRA, yourDataObject);
startActivity(intent);

В OtherActivity:

public static final String KEY_EXTRA = "com.example.yourapp.KEY_BOOK";

@Override
protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);

  String yourDataObject = null;

  if (getIntent().hasExtra(KEY_EXTRA)) {
      yourDataObject = getIntent().getStringExtra(KEY_EXTRA);
  } else {
      throw new IllegalArgumentException("Activity cannot find  extras " + KEY_EXTRA);
  }
  // do stuff
}

Дополнительная информация здесь: http://developer.android.com/reference/android/content/Intent.html

Ответ 2

Попробуйте следующее: если вам нужны значения прохода между действиями, которые вы используете это...

Этот код для Main_Activity помещает значения в цель

 String name="aaaa";
 Intent intent=new Intent(Main_Activity.this,Other_Activity.class);
 intent.putExtra("name", name);
 startActivity(intent);

Этот код для Other_Activity и получения значения формы намерения

    Bundle b = new Bundle();
    b = getIntent().getExtras();
    String name = b.getString("name");

Ответ 3

В основном это то, что вам нужно сделать:
в первом действии:

Intent intent = new Intent();
intent.setAction(this, SecondActivity.class);
intent.putExtra(tag, value);
startActivity(intent);

и во втором активе:

Intent intent = getIntent();
intent.getBooleanExtra(tag, defaultValue);
intent.getStringExtra(tag, defaultValue);
intent.getIntegerExtra(tag, defaultValue);

одна из функций get даст вам значение в зависимости от типа данных, через который вы проходите.