кнопка изменения размера составного элемента управления, чтобы поместиться внутри текста редактирования - PullRequest
0 голосов
/ 06 апреля 2011

В следующем фрагменте, как я могу получить mClickable такой же высоты, как mTextArea?

Ответы [ 2 ]

1 голос
/ 06 апреля 2011

Трудно точно сказать, что вы хотите, но звучит так, как будто вы просите о двух разных вещах, которые (как правило) невозможны только с одним макетом. Исходя из того, что я интерпретирую, вы говорите, что я хочу, чтобы кнопка была такого же размера, как изображение, а затем говорите, что я не хочу, чтобы кнопка была такого же размера, как изображение (когда ее тоже большая).

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

Установить два одинаковых размера легко с помощью параметра XML android:layout_weight, и вы уже знакомы с wrap_content для использования с большим изображением. Хотя вы можете использовать эти два параметра вместе, вы не получите желаемого во всех случаях (опять же, при условии, что я понимаю ваш пост). Вам понадобится один макет с использованием весов, чтобы сделать представления одинакового размера, а другой с использованием wrap_content, чтобы учесть разные размеры.

Кроме того, просто примечание, я бы действительно рекомендовал использовать XML для макетов, если нет ничего конкретного, чего вы не можете достичь с помощью XML.

Редактировать: Вот пример для вас.

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" >

    <Button
        android:id="@+id/button_1"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="short" />

    <Button
        android:id="@+id/button_2"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="medium" />

    <Button
        android:id="@+id/button_3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="loooooooooong" />     
</LinearLayout>

enter image description here

0 голосов
/ 14 июля 2011

есть ли причина, по которой вы не будете специально устанавливать их высоту в своем XML, чтобы вы были уверены, что они имеют одинаковый размер?как ваша кнопка, и ваш текст редактирования будет иметь этот атрибут?

android:layout_height="20dip"
...