Я намагаюся робити порожні рядки в android. Це те, чим я займався:
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="\n\n"
Я хочу знати, чи є кращий спосіб? Дякую
Я намагаюся робити порожні рядки в android. Це те, чим я займався:
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="\n\n"
Я хочу знати, чи є кращий спосіб? Дякую
Відповіді:
Використовуйте Spaceабо, Viewщоб додати певну кількість місця. Для 30 пікселів вертикальної щільності:
<Space
android:layout_width="1dp"
android:layout_height="30dp"/>
Якщо вам потрібен гнучкий простір-заповнювач, використовуйте Viewміж елементами в LinearLayout:
<View
android:layout_width="1dp"
android:layout_height="match_parent"
android:layout_weight="1"/>
або
<View
android:layout_width="1dp"
android:layout_height="0dp"
android:layout_weight="1"/>
Це працює для більшості макетів для API 14 та новіших версій, крім віджетів (використовуйте FrameLayoutзамість них).
[Оновлено 9/2014 для використання космосу. Порада капелюха @Sean]
Якщо вам не потрібно, щоб пробіл був рівним 2 рядки, ви можете додати порожній вигляд таким чином:
<View
android:layout_width="fill_parent"
android:layout_height="30dp">
</View>
Перегляньте, якщо вам потрібно змінити колір фону, пробіл, якщо ні.
це не означає, що вам доведеться змінити фон перегляду.
<View
android:layout_width="match_parent"
android:layout_height="20dp"
android:background="@color/YOUR_BACKGROUND">
</View>
або Космос
<Space
android:layout_width="match_parent"
android:layout_height="20dp"
/>
Оновлена відповідь: Починаючи з API 14, ви можете використовувати "Space" View, як описано в документації .
Простір - це легкий підклас View, який може використовуватися для створення проміжків між компонентами в макетах загального призначення.
<Space android:layout_width="fill_parent" android:layout_height="10dp" />
якщо ви хочете виділити простір між макетом .це спосіб використовувати простір. якщо видалити поле, воно не з'явиться. використання тексту всередині простору - це не найкращий підхід. сподівання, що допомагає.
<Space
android:layout_width="match_content"
android:layout_height="wrap_content"
android:layout_margin="2sp" />
<View
android:layout_width="fill_parent"
android:layout_height="30dp"
android:background="#80000000">
</View>
Я категорично не погоджуюся з підходом CaspNZ.
Перш за все, цей невидимий вигляд буде виміряний, оскільки він є "fill_parent". Android спробує розрахувати правильну його ширину. Натомість тут рекомендується невелике постійне число (1dp).
По-друге, View слід замінити на простіший клас Space, клас, призначений для створення порожніх пробілів між компонентом інтерфейсу для найшвидшої швидкості.
спробуйте це
у layout.xml:
<TextView
android:id="@+id/xxx"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="@string/empty_spaces" />
у strings.xml:
<string name="empty_spaces">\t\t</string>
це спрацювало для мене
Цього можна досягти, використовуючи простір або вид .
Простір невеликий, але не набагато гнучкий.
Вид займає прямокутну область на екрані і відповідає за малювання та обробку подій. Перегляд більш настроюваний, ви можете додавати фон, малювати фігури, як простір.
Реалізація простору:
(Наприклад: простір для 20 вертикальних та 10 горизонтальних пікселів щільності)
<Space
android:layout_width="10dp"
android:layout_height="20dp"/>
Реалізація подання:
(Наприклад: Перегляд для 20 вертикальних та 10 горизонтальних пікселів щільності, включаючи колір фону)
<View
android:layout_width="10dp"
android:layout_height="20dp"
android:background="@color/bg_color"/>
Простір для форматування рядків за допомогою сутності HTML:
 для простору, що не ламається
 для звичайного простору.
є кращий спосіб зробити це, просто скористайтеся наведеним нижче кодом і змініть відповідно до бажаного розміру порожньої області
<Space
android:layout_width="wrap_content"
android:layout_height="32dp"
android:layout_column="0"
android:layout_row="10" />
якщо ви використовуєте з укладкою сітки, тоді використовуйте лише
android:layout_row="10" />