Я видел много способов выравнивания текстового изображения с изображением, но я не нашел, как сделать, когда текст больше, чем изображение, и когда вы хотите, чтобы текст занимает весь родительский макет. Моя раскладка такова:Выравнивание imageView и textView (и переполнение текста с рамкой)
<RelativeLayout
android:id="@+id/accordion_toogle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:visibility="gone">
<ImageView
android:id="@+id/accordion_image"
android:layout_width="@dimen/accor_img_wid"
android:layout_height="@dimen/accor_img_hei" />
<TextView
android:id="@+id/accordion_msg"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/accordion_image"
android:paddingLeft="5dp"/>
</RelativeLayout>
В этом случае, при условии, что изображение занимает половину RelativeLayout, то accordion_msg продолжает занимать половину RelativeLayout раза финиша ImageView.
Вы меня понимаете ?? Я хорошо выразился? Любое предложение??
спасибо.
EDIT Изображение помочь то, что я пытаюсь сделать:
розовый квадрат картина, фиолетовые и белые прямоугольники, где должны текст быть, но до сих пор, фиолетовый пусто. Текст занимает только белый квадрат.
EDIT 2
Я пытаюсь что говорит @Elltz ... но я не могу сделать то, что я хочу, у меня есть этот код:
draw.setBounds(0, 0, width, height); //width: 128 height: 172 in this case
textview.setCompoundDrawablesRelative(draw, null, null, null);
Но изображение не показывается, я стараюсь другие много вещей, например:
textview.setCompoundDrawablesRelative(null, draw, null, null);
И изображение остается в верхней части текста. Другое Diferent это я попытался было:
textview.setCompoundDrawables(draw, null, null, null);
И образ находится на левой стороне ... но вертикальное выравнивание по центру, а верхние и нижние части изображений не являются пустыми (без текста, нет фото ... нет ничего). Я пытаюсь изменить родителя на LinearLayout, используя гравитационный левый, гравитационный верх, RelativeLayout ...
Oooppsss !!! теперь макет таков:
<RelativeLayout
android:id="@+id/accordion_toogle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:visibility="gone">
<TextView
android:id="@+id/accordion_msg"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/accordion_image"
android:paddingLeft="5dp"/>
</RelativeLayout>
* Видимость у родителя не важна, я меняю ее программно.
спасибо.
Я боюсь, что это сбивает с толку. Если бы вы могли добавить изображения того, что вы получаете, и что вы хотите, это поможет совсем немного. – codeMagic
Я сам должен иметь такой контроль. Вместо этого я предпочитаю использовать LinearLayouts и устанавливать свойство Gravity на родительский макет, чтобы дети соответствовали. –