Вопрос

У меня есть ScrollView Android с белой предпосылкой. Выцветающий край - белый полупрозрачный градиент. Я хотел бы изменить это быть черным вместо белого. У меня есть список просмотров в одном и том же проекте с белой предпосылкой, который имеет черное исчезновение края по умолчанию, но я не могу найти где (если где угодно), который был установлен.

Это было полезно?

Решение

Просто нашел его по пробным и ошибкам.

Просто установить android:background="@color/yourColor" для <ScrollView>. Отказ Это установит тень к данному цвету.

Другие советы

Если вы хотите, чтобы другой цвет выцветал, чем на заднем плане, вы должны переопределить метод getsolidColor () ScrollView. Например:

@Override
public int getSolidColor() {
    return Color.rgb(0x30, 0x30, 0x30);
}

Вы можете использовать:

    final int glowDrawableId = context.getResources().getIdentifier("overscroll_glow",
            "drawable", "android");
    final Drawable androidGlow = context.getResources().getDrawable(glowDrawableId);
    androidGlow.setColorFilter(Color.RED, PorterDuff.Mode.SRC_IN);

    int edgeDrawableId = context.getResources().getIdentifier("overscroll_edge", "drawable",
            "android");
    final Drawable androidEdge = context.getResources().getDrawable(edgeDrawableId);
    androidEdge.setColorFilter(Color.RED, PorterDuff.Mode.SRC_IN);

Вы можете использовать это:

https://github.com/androidaliance/edgeeffectoverride.

enter image description here

Простая чистая и работает идеально!

РЕДАКТИРОВАТЬ: Это не отвечает на вопрос, который просил ScrollView. Отказ Этот ответ работает только на AbsListView и потомки (в том числе ListView).


Цвет выцветающего края контролируется android:cacheColorHint атрибут.

Например:

<ScrollView android:cacheColorHint="#ff000000" android:background="#ffffffff" />

установит фон в белый, а cacheColorHint Используется для рисования выцветающего края цвета - в этом случае это было бы черным.

Если вы не знаете, что изменил цвет вашего выцветающего края, это было, вероятно, приложение стиля или темы. Проверьте свой манифест для android:theme="something" в деятельности. Если тема из группы android.R.style.Theme.Light край будет белым. По умолчанию android.R.style.Theme а также android.R.style.Theme.Black будет иметь черные выцветающие края. Темы также влияют на другие атрибуты, поэтому проверьте атрибуты полностью, прежде чем выбросить их на одну вещь.

Сделай это:

  <ScrollView
    android:theme="@style/scrollUpdate"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="1" >

В ценностях стили положили стиль

<style name="scrollUpdate">
    <item name="colorAccent">@color/yourcolor</item>
    <item name="android:color">@color/yourcolor</item>
    <item name="colorPrimary">@color/yourcolor</item>
    <item name="colorPrimaryDark">@color/yourcolor</item>
</style>

Работает ко мне TKS!

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top