9

Jeśli nie muszę udzielać wsparcia dla starszych wersji Androida i mogę po prostu użyć interfejsu API 17, istnieje alternatywny sposób implementacji reklamowanego poziomego przesunięcia (jak w Gmailu), a nie korzystania z viewpagera, funkcji fragmentacji (nowe interfejsy API już mają fragmenty ...) itp., aby pozbyć się biblioteki wsparcia?Jak mogę przeprowadzić przesunięcie poziome, nie korzystając z biblioteki pomocniczej?

Wszystkie samouczki, które znalazłem dla ruchu poziomego, pokazują, jak to zrobić, korzystając z biblioteki pomocy i funkcji FragmentAktywności. W przeciwnym razie, jaka jest zaleta nowych interfejsów API, jeśli nie mogę korzystać z ich natywnych klas i metod?

Odpowiedz

4

pozbyć biblioteki wsparcia

ViewPager istnieje tylko w Bibliotece Wsparcia Android. Biblioteka pomocy Androida nie służy tylko do tworzenia kopii zapasowych.

nowe API już fragmenty

ViewPager mogą korzystać ojczystym Api 11 fragmentów, choć być może trzeba utworzyć własną PagerAdapter. Możesz też użyć numeru ViewPager bez żadnych fragmentów, używając zwykłych obiektów o numerach View lub ViewGroup.

istnieje alternatywny sposób wdrożyć wiele reklamowane bezstykowa poziomą

zapraszamy do pisania własnych zastępstwo dla ViewPager. Większość programistów preferuje ponowne użycie ViewPager, w celu zmniejszenia kosztów projektowania i konserwacji.

Dostępne jest również HorizontalScrollView, open source HorizontalListView, pływające wokół i tak dalej.

+4

OK, więc sądzę, że powinienem podać najlepszą odpowiedź i skorzystać z biblioteki pomocy technicznej. Nie mam żadnego konkretnego powodu, aby nie używać podglądu obok faktu, że chciałem, aby biblioteka wsparcia aplikacji była darmowa. Ponieważ polecenie przesunięcia w poziomie jest tak zalecane w wytycznych dla Androida, myślałem, że istnieje alternatywny sposób wbudowany w nowe interfejsy API, które ignorowałem. Pomyślałem, że zazwyczaj opisywane podejście wykorzystuje bibliotekę wsparcia, ponieważ większość deweloperów prawdopodobnie chce zachować zgodność aplikacji ze starszą wersją Androida, która wciąż jest szeroko rozpowszechniona. – Danny

+0

@CommonsWare Mam do czynienia z problemem podczas korzystania z ViewPager. Czy możesz przyjrzeć się temu ... http://stackoverflow.com/questions/30303488/how-to-update-fragments-data-used-in-viewpager-view-is-not-showing-the-eddated – AB1209

1

Można napisać własną wersję FragmentPagerAdapter, która współpracuje z android.app.Fragment zamiast android.support.v4.app.Fragment, aby zminimalizować zależność od biblioteki pomocy technicznej. Konieczne jest tylko utworzenie własnej klasy dla adaptera (na podstawie FragmentPagerAdapter z biblioteki pomocy, którego źródło można znaleźć w folderze <android-sdks>/extras/android/support/v4/src/java/android/support/v4/app/). Tylko modyfikacja jest w sekcji importowania - powinieneś odwołać się do Fragment, FragmentManager i z android.app zamiast android.support.v4.app.

Powiązane problemy