Как смешать android.support.v4.app.Fragment и android.app.Fragment

У меня возникла проблема с com.here.android.mapping.MapFragment при попытке использовать его с вкладками.

Проблема заключается в том, что, поскольку TabActivity устарела (я знаю, что она все еще работает, но мне нужно решение для будущего), а FragmentTabHost, по-видимому, требует использования фрагмента v4 (он дает сбой, если фрагмент получен из другого), затем когда я пытаюсь использовать com.here.android.mapping.MapFragment в макете одного из фрагментов вкладки, я не могу получить его для необходимой инициализации, поскольку строка (MapFragment) getFragmentManager().findFragmentById() имеет ошибка, указывающая на невозможность приведения к MapFragment.

Я полагаю, проблема в том, что MapFragment является производным от android.app.Fragment, а findFragmentById ожидает вернуть смесь android.support.v4.app.Fragment, поэтому вопрос будет заключаться в том, как я могу заставить эту смесь работать гладко вместе?


person Dr.Jukka    schedule 10.03.2014    source источник
comment
Кто-то отредактировал это как Googlemaps, но на самом деле это вопрос HERE Maps для платформы NokiaX, поэтому теги были повторно исправлены.   -  person Dr.Jukka    schedule 10.03.2014


Ответы (1)


Классы android.support.v4.app.Fragment и android.app.Fragment нельзя использовать взаимозаменяемо.

Nokia создала com.here.android.mapping.MapCompatibilityFragment, который расширяет android.support.v4.app.Fragment — используйте его вместо этого, если ваше приложение использует фрагменты поддержки.

person antonyt    schedule 10.03.2014