Не можете получить градиентный фон, чтобы хорошо выглядеть? - PullRequest
9 голосов
/ 03 октября 2011

Я перепробовал все и искал всю сеть, но все равно ничего не работает.
Вот фон, который разработал мой дизайнер:
enter image description here

А вот как это выглядитмой экран (Galaxy S I9000):
enter image description here

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

findViewById(R.id.LinearLayout_Main).getBackground().setDither(true);
    @Override
public void onAttachedToWindow() {
    super.onAttachedToWindow();
    Window window = getWindow();
    window.setFormat(PixelFormat.RGBA_8888);
}

Может кто-нибудь сказать мне, почему?

1 Ответ

5 голосов
/ 03 октября 2011

Думаю, эта статья будет вам интересна:

Идеальный пользовательский интерфейс Android: борьба с дизерингом

И вы можете прочитать о фоновом режиме дизеринга здесь тоже на SO

android: dither = "true" не дизеринг, что не так?

И последнее предложение исходит от групп Google Android

https://groups.google.com/group/android-developers/browse_thread/thread/aebef48635d04334/2e3d86e62e0452e5?lnk=gst&q=dithering#2e3d86e62e0452e5

для использования gradient proxy drawable shape вместо @drawable/image, например:

<?xml version="1.0" encoding="utf-8"?> 
<shape 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:src="@drawable/image" 
    android:dither="true" /> 
...