Articles of андроидов фрагментов

Является ли официальное руководство разработчиков фрагментов противоречивым?

В разделе « Философия дизайна » официального руководства Fragment говорится: Вы должны проектировать каждый фрагмент как модульный и многоразовый компонент. То есть, поскольку каждый фрагмент определяет свой собственный макет и его собственное поведение с его собственными обратными вызовами жизненного цикла, вы можете включить один фрагмент в несколько действий, поэтому вы должны проектироваться для повторного использования […]

Загружаются ли загружаемые ресурсы кэша Android в файлы макета xml?

У меня есть ViewPager который загружает много фрагментов (+20). Каждый из этих фрагментов является всего лишь экземпляром одного единственного фрагмента, и единственное, что меняется, – это содержание каждого из них. Пользовательский интерфейс для этого фрагмента имеет среди других виджетов 4 разных ImageViews которые загружают один и тот же ресурс, но, конечно, расположены в разных частях […]

После поворота экрана findFragmentById () возвращает фрагмент, даже если в макете нет такого идентификатора

У меня есть один макет в двух направлениях – 1 пейзаж и 1 портрет. /layout-land/main.xml имеет два фрагмента: <fragment android:id="@+id/fragment1" .. /> <fragment android:id="@+id/fragment2" .. /> /layout/main.xml имеет только один фрагмент: <fragment android:id="@+id/fragment1" .. /> Вот MainActivity.java : @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); firstFragment = (FirstFragment) getFragmentManager().findFragmentById(R.id.fragment1); secondFragment = (SecondFragment) getFragmentManager().findFragmentById(R.id.fragment2); } […]

Как изменить фрагмент с помощью операции «Нижняя навигация»?

Я создал новый проект с «Активность нижней навигации»: https://gyazo.com/f5efaecffd5adfd05e512921d3b8a19d Это сгенерированный код: package com.aaron.waller.mrpolitik; import android.os.Bundle; import android.support.annotation.NonNull; import android.support.design.widget.BottomNavigationView; import android.support.v7.app.AppCompatActivity; import android.view.MenuItem; import android.widget.TextView; public class MainActivity extends AppCompatActivity { private TextView mTextMessage; private BottomNavigationView.OnNavigationItemSelectedListener mOnNavigationItemSelectedListener = new BottomNavigationView.OnNavigationItemSelectedListener() { @Override public boolean onNavigationItemSelected(@NonNull MenuItem item) { switch (item.getItemId()) { case R.id.navigation_home: mTextMessage.setText(R.string.title_home); […]

Пытается наложить фрагмент поверх существующего макета

Мы создали определенную активность в нашем приложении, теперь мы хотели создать страницу типа учебника, в которой мы будем заполнять экран фиктивными данными и показывать пользователям, что есть (они будут щелкать рядом с каждым компонентом) Я думал, что нужно использовать фрагмент (в режиме совместимости с 4+) и оставить текущую активность такой, какой есть, и если пользователь […]

Проблемы с памятью – фрагменты

Недавно я реорганизовал приложение и заменил ViewFlipper для FrameLayout, на котором я обмениваюсь между фрагментами. Каждый раз, когда пользователь запрашивает одно из видов: public void showLibraryOf(long publisherId) { library = new DownloadLibraryFragment(id, viewFactory()); FragmentTransaction ft = getFragmentManager().beginTransaction(); ft.replace(R.id.container, library); ft.commit(); library.setAdapterObserver(this); } public void showMyLibraryOf(long publisherId) { myLibrary = new MyLibraryFragment(id, viewFactory()); FragmentTransaction ft = […]

TabMode = "прокручиваемый" не работает

Я использую TabLayout из библиотеки поддержки Android Design. Я использую тему материального дизайна. Ниже приведен код activity_scrollable_Tab.xml <android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <android.support.design.widget.AppBarLayout <android.support.design.widget.TabLayout android:id="@+id/tabs" android:layout_width="match_parent" android:layout_height="wrap_content" app:tabMode="scrollable"/> </android.support.design.widget.AppBarLayout> <android.support.v4.view.ViewPager android:id="@+id/viewpager" android:layout_width="match_parent" android:layout_height="match_parent" app:layout_behavior="@string/appbar_scrolling_view_behavior" /> </android.support.design.widget.CoordinatorLayout> scrollableTabActivity.java public class ScrollableTabsActivity extends AppCompatActivity { private Toolbar toolbar; private TabLayout tabLayout; private ViewPager viewPager; @Override protected void onCreate(Bundle […]

Android ViewPager Загрузка неправильных фрагментов

Поэтому я пытаюсь получить панель вкладок и макет под моей основной навигационной панелью, работая над моей основной деятельностью. Кажется, я не могу получить ViewPager / TabLayout (неуверенный, который является причиной проблемы, новичок в этом) для загрузки правильного фрагмента. Я прочитал тонну документации и проверил более 1 учебника, чтобы узнать, правильно ли я делаю это, и […]

NullPointerException: name == null

Я разрабатываю приложение для Android, которое использует фрагменты. Я получил эту ошибку. Caused by: java.lang.NullPointerException: name == null Что означает name == null ? Вот полный журнал 08-04 15:02:22.422: E/AndroidRuntime(2499): FATAL EXCEPTION: main 08-04 15:02:22.422: E/AndroidRuntime(2499): java.lang.RuntimeException: Unable to start activity ComponentInfo{fi.peltoset.mikko.home/fi.peltoset.mikko.home.Koti}: android.view.InflateException: Binary XML file line #17: Error inflating class fragment 08-04 15:02:22.422: E/AndroidRuntime(2499): […]

Видимость индикатора загрузки динамического фрагмента Android не будет установлена

Я использую Android-фрагменты для загрузки кода в своем приложении. Чтобы создать простой загрузчик, у меня есть LoadingFragment extends Fragment а затем мои классы фрагментов расширяются, например: MyFragment extends LoadingFragment . В LoadingFragment есть hideLoader и showLoader теоретически, мой фрагмент подкласса должен иметь возможность вызывать onCreateView и onPostExecute чтобы показать и скрыть индикатор выполнения между нагрузками. […]