Bundle - экономь на покупках вместе с нами!
Bundle - это механизм Android, который позволяет упаковывать данные вместе и передавать их между компонентами приложения или между различными приложениями. Bundle имеет тип HashMap, с помощью которого можно хранить и извлекать данные по ключам.
Пример использования Bundle в Android:
1. Передача данных между Activity:
Intent intent = new Intent(this, SecondActivity.class);
Bundle bundle = new Bundle();
bundle.putString("name", "John"); // упаковка данных
bundle.putInt("age", 25);
intent.putExtras(bundle); // передача данных
startActivity(intent);
Вторая Activity получит эти данные следующим образом:
Bundle bundle = getIntent().getExtras(); // получение данных из Intent
if (bundle != null) {
String name = bundle.getString("name"); // получение данных
int age = bundle.getInt("age");
}
2. Использование Bundle в Fragment:
public class MyFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.my_fragment, container, false);
Bundle bundle = getArguments(); // получение данных из аргументов
if (bundle != null) {
String name = bundle.getString("name");
int age = bundle.getInt("age");
}
return view;
}
}
Фрагмент может быть создан следующим образом:
MyFragment fragment = new MyFragment();
Bundle bundle = new Bundle();
bundle.putString("name", "John");
bundle.putInt("age", 25);
fragment.setArguments(bundle); // передача данных в аргументы
Все примеры демонстрируют способ использования Bundle для передачи данных между компонентами приложения. Bundle может хранить данные различных типов, таких как строки, целые числа, объекты Parcelable, Serializable и т.д. Это очень удобный механизм, когда необходимо передать несколько значений между Activity, Fragment или другими компонентами приложения.