Фокус теряется после смены фрагмента (ANDROID TV)

 public void changeFragment(String str) {


    SecFragment nextFrag = new SecFragment();
    Bundle args = new Bundle();
    args.putString("site", str);
    nextFrag.setArguments(args);
    getFragmentManager().beginTransaction()
            .replace(((ViewGroup) getView().getParent()).getId(), nextFrag)
            .commit();


}

Это мой способ изменить фрагмент в моем приложении для Android TV. Но после изменения я не могу перемещаться по своему второму фрагменту. Фокус теряется.

На самом деле я использую копию Mainfragment только с другой информацией, вот метод onactivitycreated 2ndFragment

@Override
public void onActivityCreated(Bundle savedInstanceState) {

    Bundle bundle = getArguments();
    if (bundle != null) {
        site = bundle.getString("site");
    }

    super.onActivityCreated(savedInstanceState);
    page = 1;

    list = new ArrayList<Movie>();
    prepareBackgroundManager();

    setupUIElements();
    loadRows1();
    setupEventListeners();
    Bitmap mIcon = BitmapFactory.decodeResource(act.getResources(), R.drawable.splash);
    bm = BackgroundManager.getInstance(act);
    //bm.attach(act.getWindow());
    bm.setBitmap(mIcon);

    SetupVideos(site);

}

Оба фрагмента распространяются на один и тот же класс BrowseFragment, который включен в Android Studio.


person Timur Ugurlu    schedule 23.06.2020    source источник


Ответы (1)


Вы должны использовать addToBackStack(), чтобы упростить навигацию.

person Fadman    schedule 23.06.2020
comment
Уже пробовал, с addtobackstack(null), но не работает. Я пробовал несколько способов запросить фокус на любом представлении, таком как кнопка поиска, заголовок или что-то еще, ничего не работает. - person Timur Ugurlu; 23.06.2020
comment
Я не создавал приложение для Android TV, но если вы пытаетесь перейти от одного фрагмента к другому, вам нужно объявить интерфейс и следовать этой документации, чтобы сделать это. developer.android.com/training/basics/fragments/ - person Fadman; 23.06.2020
comment
Да, я думаю, что в демо-проекте есть что-то подобное - person Timur Ugurlu; 23.06.2020