2

Я пытаюсь создать пользовательский интерфейс, где у меня есть линейный макет, который был определен в XML.Динамическое преобразование TextViews в следующую строку/строку в линейном макете

По словам пользователя, мне нужно добавить некоторые текстовые элементы в этот линейный макет. Я могу это сделать.

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

please see this image (Current)

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

I wish, I can do this way

Ниже моя конфигурация Линейное расположение в XML:

<RelativeLayout 
     android:id="@+id/RL1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_vertical" 
     android:paddingBottom="5dip" 
     android:paddingTop="5dip" > 

     <TextView 
      android:id="@+id/text1" 
      android:layout_width="85dip" 
      android:layout_height="wrap_content" 
      android:layout_alignParentLeft="true" 
      android:layout_centerVertical="true" 
      android:gravity="left" 
      android:text="Lable 1" 
      android:textColor="#999999" /> 

     <LinearLayout 
      android:id="@+id/LL1" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_centerVertical="true" 
      android:layout_toLeftOf="@+id/button1" 
      android:layout_toRightOf="@+id/text1" 
      android:gravity="left|center_vertical" 
      android:orientation="horizontal" 
      android:paddingLeft="5dip" 
      android:paddingRight="5dip" 
      android:paddingTop="3dip" > 
     </LinearLayout> 

     <Button 
      android:id="@+id/button1" 
      android:layout_width="30dip" 
      android:layout_height="30dip" 
      android:layout_alignParentRight="true" 
      android:layout_centerVertical="true" 
      android:layout_marginTop="2dip" 
      android:background="@drawable/plus" 
      android:clickable="true" 
      android:focusable="true" 
      android:paddingTop="5dip" /> 
    </RelativeLayout> 

Может ли один помочь мне в том, как перестраивать то же самое в Java коде.

+0

can u post ur полный xml код .. – user1213202

+0

Изменен в разделе вопросов. – Vinay

+0

в ur xml u имеет только одно текстовое представление и только одна кнопка ... – user1213202

ответ

1

Я хотел бы предложить вам, как вы можете обеспечить равные размеры всем вашим представлениям в линейной компоновке, вы можете сделать это, используя свойство weight в файле XML, то есть андроид: вес для этого конкретного вида и когда вы используете это свойство вы должны дать width = 0dp или 0dip.I думаю, что это решит вашу проблему легко.

Пожалуйста, я предлагаю вам сначала взять полное знание о том, как использовать это свойство в следующей ссылке: - Weight property with an example

+1

Я пробовал, чтобы у него был недостаток, вы используете 4 строки, чтобы показать 4 элемента .. где я могу завершить их в 2 строках, как показано выше. – Vinay

1

Пожалуйста, см:

How to wrap Image buttons in a horizontal linear layout?

How can I do something like a FlowLayout in Android?

Вы также мог бы искать github для FlowLayout.java.

Альтернативный подход приведен в: Android - multi-line linear layout

Кроме того, есть класс, который добавляет изображения в TextView: https://stackoverflow.com/a/21250752/755804 , которая не является такой же, как оборачивать взгляды в общем случае, но иногда может сделать работа.

Смежные вопросы