Intereting Posts
Как включить открытый ключ RSA в Google Play Services в моем бинарном приложении Android? Начальная деятельность через Intent медленная / показывает значительную задержку – почему? Обработка изображений на Android Как использовать средство Monitor (DDMS) для отладки приложения Андроид HTTP HTTP-запрос с использованием самозаверяющего сертификата и CA Направление компаса отличается в зависимости от ориентации телефона Приложение Port android от Android Studio до Microsoft Visual Studio Ошибка в тестовом коде Geofence для Android? Кто-нибудь может подтвердить? Eclipse: проверьте, что aapt присутствует в «.. \ sdk \ build-tools \ 23.0.0_rc1 \ aapt.exe" Получение высоты текстового представления перед рендерингом в макет В Android 7 (уровень API 24) моему приложению не разрешено отключать звук телефона (установить режим звонка на тихий) MediaMetadataCompat METADATA_KEY_ART только устанавливает изображение в первый раз Как получить идентификатор пользователя Google (а не идентификатор устройства)? Как убрать клавиатуру в appium с помощью Java? Как я могу безопасно записывать видео с низким разрешением на Android по целому ряду устройств?

Общий метод не распознает общий тип при передаче его в качестве параметра

Я пытаюсь создать динамическое создание экземпляра:

private <F extends Fragment> void addFragment(F fragment) { fragment.setArguments(new Bundle()); FragmentTransaction tx = getFragmentManager().beginTransaction(); tx.add(R.id.container, fragment); tx.submit(); } 

Однако компилятор отклоняет tx.add(R.id.container, fragment) потому что для add(int, F) нет сигнатуры метода!

Как заставить метод add () понять, что F действительно является фрагментом?

Заранее спасибо 🙂

Это связано с тем, что вы импортировали неправильный Fragment в свой класс, что он несовместим с аргументом фрагмента метода add.

Так как вы использовали getFragmentManager() что означает, что вам нужно использовать библиотеку non support для фрагмента, чтобы позволить универсальному быть совместимым с методом add.

Убедитесь, что ваш импорт выглядит следующим образом:

 import android.app.Fragment;