Как я могу поместить фоновое изображение в левый верхний угол TextView в Android - PullRequest
1 голос
/ 18 февраля 2010

Подскажите, пожалуйста, как мне разместить фоновое изображение в левом верхнем углу TextView в Android? Я бы хотел, чтобы изображение не масштабировалось на Android.

Я пытался

Resources res = getResources (); setCompoundDrawables (res.getDrawable (R.drawable.icon48x48_1), ноль, ноль, ноль);

Ничего не показано.

И я попробовал setBackground (R.drawable.icon48x48_1);

Но растягивает изображение.

Спасибо за любую помощь.

Ответы [ 3 ]

2 голосов
/ 18 февраля 2010

Вы пытались установить DrawableLeft в своем XML-макете текстового представления?

android:drawableLeft="@+id/img">
1 голос
/ 18 февраля 2010

Вы всегда можете сделать из своего нового фонового изображения 9-патч и поместить растягиваемые области справа и снизу в прозрачную область.

0 голосов
/ 18 февраля 2010

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

Если это то, что вы хотите

alt text

вы можете сделать что-то вроде

    final TextView tv = (TextView) findViewById(R.id.TextView01);
    tv.setTransformationMethod(new TransformationMethod() {
        private static final String INDENT = "       ";

        @Override
        public void onFocusChanged(View view, CharSequence sourceText,
                boolean focused, int direction, Rect previouslyFocusedRect) {
            // TODO Auto-generated method stub

        }

        @Override
        public CharSequence getTransformation(CharSequence source, View view) {
            return INDENT + source;
        }
    });

с использованием FrameLayout, содержащим как ImageView, так и TextView. Обратите внимание, что если значок занимает более одной строки, он не будет работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...