Сохранение пропорций объекта View при использовании layout_weight - PullRequest
1 голос
/ 19 августа 2011

У меня есть кнопка с пользовательским android: фоном и EditText над ним (в LinearLayout).Я хочу, чтобы кнопка занимала около 30% доступного экрана, а EditText - за остальное.Я использую layoutHowever, мое пользовательское изображение для моей кнопки требует масштабирования в том же соотношении, что и его высота, чтобы оно не растягивалось.Как я могу это сделать?Пока у меня есть:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" 
    android:background="@drawable/woodbackground">
    <EditText 
        android:id="@+id/editText1" 
        android:layout_height="0dip"
        android:layout_weight="2"
        android:layout_width="fill_parent" 
        android:layout_margin="10dip">
    </EditText>
    <Button 
        android:layout_height="0dip" 
        android:background="@drawable/sayit_button"
        android:layout_width="wrap_content" 
        android:id="@+id/button1"
        android:layout_weight="1" 
        android:layout_gravity="center">
    </Button>
</LinearLayout>

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

Фил.

1 Ответ

0 голосов
/ 19 августа 2011

Был задан очень похожий вопрос, где принятое решение в основном заключалось в том, чтобы наложить фон за вашим видом с помощью FrameLayout. Меньше, чем идеал, но может быть единственным вариантом: Android: масштабировать рисованное или фоновое изображение?

И это может быть бесполезно, но вы можете изучить, что вы можете сделать с 9 патчами. Рисуемое 9 патчей - это в основном рисованное (например, фоновый рисунок), у которого есть специальная невидимая граница, указывающая, будет ли он растягиваться. Подробнее информация о 9 патче и инструменте 9 патче .

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