Итак, я устал пытаться найти решение для этого. Я сам изучаю Java, поэтому мои знания немного ограничены ....Обновление Android TextView из активности на ходу
Есть много вопросов о том, как обновить текст TextView во фрагменте из активности, но не у них есть работа для меня.
я получил следующий метод в моем фрагменте, который находится внутри пейджера:
static TextView tv_db_stat;
public static Stored_Fragment newInstance(String db_stat){
Stored_Fragment fragment = new Stored_Fragment();
args.putString(ARG_DB_STAT,db_stat);
fragment.setArguments(args);
tv_db_stat.setText(args.getString(ARG_DB_STAT));
//This is the only way I found to update the text
//But tv_db_stat need to be static to keep the reference
//When I update the arguments from the activity
//Of course, I get a warning about a context class being static
return fragment;
}
Как я уже говорил в комментариях, единственный способ, которым TextView обновляется держит его как статические, так как он должен для обновления после возврата к основной деятельности из второго действия. Если я удалю из него .setText() и разрешаю это только в onCreate или onViewCreated, текст не обновляется. Если я не стану статичным, у меня есть (как и следовало ожидать) NPE.
(EDIT) Я пытался использовать контейнер в моем XML закодированного макет, но, как и у вас есть предположение, то fragment.replace.commit просто перекрывают виджеты ...
Это работает «нормально» , но мне не нравится возможность утечки памяти, я попробовал почти все советы там, но не из них обновить мой TextView, но это.
в своей деятельности я просто делаю это:
Stored_Fragment sf = new Stored_Fragment();
sf.newInstance(DB_STAT);
Итак, что же вы, что должна быть лучшей альтернативой этому «решение