Могу ли я получить данные о местоположении кнопок в моем приложении для Android - PullRequest
0 голосов
/ 08 марта 2012

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

Тем не менее, я не могу понять, как получить мои перчатки на эту информацию. Рассматриваемые кнопки определены в XML, в линейном макете, но что-то внутри моего Android должно знать их размеры и расположение. Правильно?

Есть предложения? Спасибо, Р.

Ответы [ 2 ]

1 голос
/ 09 марта 2012

Вы должны иметь возможность установить фон кнопки для пользовательского чертежа в формате xml с рисованным элементом, содержащим только обводку по краю.

Вам нужно будет создать этот пользовательский чертеж:несколько строк XML.

<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <stroke android:width="1dp" android:color="#CCCCCC" />
    <corners android:radius="10dp" />
</shape>

Редактировать: обновлено, чтобы включить закругленные углы.

0 голосов
/ 12 марта 2012

Этот ответ представляет собой комбинацию моего возни с предложением Алекса использовать нестандартный чертеж.В конечном счете, для моего пользовательского рисования потребовалось более трех строк, но он все еще не очень большой:

<?xml version="1.0" encoding="utf-8"?>

<selector
    xmlns:android="http://schemas.android.com/apk/res/android">

    <item>

        <shape>

            <gradient
                android:startColor="@android:color/black"
                android:endColor="@android:color/black" />

            <stroke
                android:width="1dp"
                android:color="#cccccc" />

            <corners
                android:radius="5dp" />

            <padding
                android:left="4dp"
                android:top="2dp"
                android:right="4dp"
                android:bottom="2dp" />

        </shape>

    </item>

</selector>

Мне нужно было добавить все остальные детали, чтобы пользовательская кнопка работала так, как я хотел -Я, вероятно, еще не закончил, но если кому-то интересно, это работает довольно хорошо ...

...