LinearLayout в RemoteViews не обрезает ImageView - PullRequest
0 голосов
/ 22 января 2011

У меня есть виджет n приложения, который работает довольно много, с одной причудой. У меня есть LinearLayout в виджете, и я могу добавить строки своих данных в него просто отлично. Кажется, для меня нет очевидного способа определить, насколько велика линейная схема и подходит ли данная строка, поэтому я просто добавляю весь набор данных (так как он не очень большой). Текст в моем макете обрезается внизу, чего я и ожидал. Однако ImageView рядом с ним не обрезается, а масштабируется. Честно говоря, выглядит глупо.

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

Макет для строк, которые я добавляю (если здесь есть глупость, это, вероятно, из-за анонимности, которую я применил):

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content">
    <ImageView 
        android:id="@+id/checkbox"
        android:layout_width="28sp"
        android:layout_height="28sp"
        android:src="@drawable/check_off"
        android:layout_marginLeft="5dp"
        android:layout_marginTop="1dp"
        android:layout_alignParentLeft="true"/>
    <TextView 
        android:id="@+id/textview"
        android:layout_height="wrap_content"
        android:layout_width="wrap_content"
        android:textSize="16sp"
        android:minHeight="28sp"
        android:paddingLeft="5dp"
        android:layout_centerVertical="true"
        android:layout_alignWithParentIfMissing="true"
        android:layout_toRightOf="@id/checkbox"/>
</RelativeLayout>

РЕДАКТИРОВАТЬ: контейнер для строк является простой LinearLayout:

<LinearLayout
    android:id="@+id/list_items"
    android:layout_height="wrap_content"
    android:layout_width="fill_parent"
    android:layout_above="@id/logo"
    android:layout_marginBottom="4dp"
    android:padding="1dp"
    android:orientation="vertical"
    android:background="@drawable/widget_background"/>

Ответы [ 2 ]

0 голосов
/ 25 января 2011

Оказывается, что решение RelativeLayout, которое соответствует строке определенной высоты (30sp для этого макета) вместо «wrap_content», решило проблему. Изображение теперь обрезается правильно.

0 голосов
/ 25 января 2011

Попробуйте добавить тип масштаба к вашему ImageView:

android:scaleType="centerCrop"

или

android:scaleType="fitCenter"

или любые другие опции, перечисленные здесь: http://developer.android.com/reference/android/widget/ImageView.ScaleType.html

...