2012-01-30 16 views
10

Mam mały problem z moim widokiem przewijania. Kiedy przewijany widok przewija się, pokazuje żółty gradient (w moim urządzeniu może się różnić w przypadku innych urządzeń) przy krawędziach widoku przewijania. Można go wyeliminować, ustawiając atrybut jak poniżej w Androidzie 2.3 i nowszych.Zmiana koloru przewinięcia przewijania w trybie przewijania w systemie Android

android:overScrollMode="never" 

Teraz chcę zmienić domyślny kolor na inny. Jak to osiągnąć.

Proszę mi pomóc w związku z tym. Każda pomoc zostanie doceniona.

+0

btw, proszę wiedzieć, że kolor nie zawsze jest "orange". zależy to od urządzenia. –

+0

niech będzie w dowolnym kolorze, czy jest jakiś pomysł, aby zmienić ten kolor? –

+1

Zgodnie z tym [post] [1], nie ma sposobu, aby zrobić to naturalnie. [1]: http://stackoverflow.com/questions/5897909/how-can-i-change-the-overscroll-color-in-android-2-3-1 – josephus

Odpowiedz

7

Należy stosować następujące atrybuty na swojej ListView:

<ListView 
     ... 
     android:overScrollHeader="@drawable/header" 
     android:overScrollFooter="@drawable/footer"/> 

Można również ustawić je programowo za pomocą setOverscrollFooter(Drawable d) i setOverscrollHeader(Drawable d).

+2

jestem nie pytając o ListView, dla widoku przewijania. –

+0

As u r Odpowiedź Mam narzędzie, ale wciąż nie ma obrazu na przeskoku w Listview –

+0

Czy udało Ci się zmienić kolor? A może po prostu go usunąłeś? Jeśli udało Ci się to zmienić, co napisałeś jako drawowalny? Zobacz http://stackoverflow.com/questions/12102108/custom-overscroll-glow-edge-color-for-listview –

2

Ta biblioteka EdgeEffectOverride działa dobrze dla wszystkich widoków przewijania typu: https://github.com/AndroidAlliance/EdgeEffectOverride

Np

<uk.co.androidalliance.edgeeffectoverride.EdgeEffectScrollView 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    ... 
    app:edgeeffect_color="@color/red" 
    /> 

I

EdgeEffectScrollView gridView = (EdgeEffectScrollView) root.findViewById(R.id.myscroll); 
gridView.setEdgeEffectColor(Color.RED); 
+0

[+1] Fajna biblioteka .... dzięki za udostępnienie :) – Devrath

+0

działa tylko przed lollipopem – parohy

Powiązane problemy