Классика учит, что активность не должна напрямую взаимодействовать с методами и переменными фрагмента. Только через интерфейсы. При изучении данной темы обратил внимание, что передача данных из активности в фрагмент, осуществляемая через Bandle, ссылается непосредственно на поле фрагмента в активности. Насколько это соответствует учению?
@Override
public void interface1(String string) {
Fragment fragment = new Fragment2();
FragmentManager fm = getFragmentManager();
Bundle bundle = new Bundle();
bundle.putString(Fragment2.KEY, string); //Fragment2.KEY - поле фрагмента
fragment.setArguments(bundle);
fm.beginTransaction().add(R.id.fragmentContainer2, fragment).commit();
}
Это стандартный способ передачи аргументов. Можно сделать интерфейс в котором будут константы для ключей бандла.
Я так понимаю, суть того подхода, который вы прочитали в книжках, нацелен на защиту данных в полях объектов от очистки, которая может происходить в Андроиде при множестве обстоятельств. И любое значение, которое было инициализировано в объекте (Activity), не застрахованно от пропажи в момент, когда к нему обратятся из другого элемента приложения (Fragment). А в вашем примере задействован только static ключ-идентификатор, который никуда не денется, сколько бы приложение ни сворачивали-разворачивали
Как меняется крипторынок и к чему готовиться владельцам криптообменников
Как в андроиде JAVA эмулировать webview iframe request чтобы сайт к которому обращались думал что это iframe Меняю Referer сайт все равно как то определяет...
Есть int[] массив, в нём такие целые числа: 18 3 34 35 8 0 22 10, как записать это в файлtxt и считать чтобы получить не 1 8 3 3 4 3 5 8 и т
В android tv подключил компонент в приложение webview и при серфинге страниц в вебвью не передаются никаким образом http_referer не в ручную не просто как...
Мне аж стыдно такое спрашиватьНе получается подключить картинку ( Что я уже только не писал в <img src=""> Может кто подскажет