Использование закругленных углов

Eстьхороший пост сделано популярным разработчиком GoogleРомэн Гай который показывает, как использовать нарисованные закругленные углы (называется "StreamDrawable» вего код ) на вид эффективно.

Сам образец очень хорошо работает на моем Galaxy S3 в портретном режиме, но у меня есть несколько проблем с ним:

если экран маленький (например, на экранах qvga), показанные изображения обрезаются.

если у меня есть входное растровое изображение, которое слишком мало, чем то, как я хочу показать, у выходного изображения будут размыты края. Даже на Galaxy S3, когда вы запускаете образец кода и онна ландшафте это выглядит ужасно: я

Я до сих пор не уверен в этом (поскольку я использую обходной путь масштабирования изображения для использования примера кода), но он считает, что даже это решение немного медленное при использовании в listView. Может быть, есть решение для визуализации для этого?

Это неНе имеет значения, использую ли я setImageDrawable или setBackgroundDrawable. Это должно быть что-то в самом наборе.

Я пытался поиграть с переменными и bitmapShader, но ничего не получалось. грустноTileMode Безразлично»у него есть значение только для растягивания изображения, только для мозаики.

В качестве обходного пути я могу создать новое масштабированное растровое изображение, но этоЭто просто обходной путь. Конечно, есть лучший способ, который также не будет использовать больше памяти, чем следовало бы.

Как я могу исправить эти проблемы и использовать этот отличный код?