Форум программистов, компьютерный форум, киберфорум
Программирование Android
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.54/13: Рейтинг темы: голосов - 13, средняя оценка - 4.54
 Аватар для dubok79
325 / 123 / 10
Регистрация: 01.11.2012
Сообщений: 587

Как правильно размещать элементы View на Layout

16.11.2012, 10:15. Показов 2632. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
У меня есть небольшое приложение в виде виджета. На виджете есть ImageView и три TextView. Т.е. на заднем фоне как бы картинка а на ней три строки, сверху и снизу маленький текст, а по середине большой. Все тесты проводил на своем смарте, но у меня стоит лончер Apex и на нем сетку я вяставил как 5х4. Все разместил с использованием Margins, все получилось красиво, но как оказалось на смартах со стандартным лончером или просто с другим весь текст разъехался куда глаза глядят. Как делать что бы везде разметка на виджете не зависела от всяких там настроек лончера? Спасибо. Разметка виджета представлена ниже.

XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
<?xml version="1.0" encoding="utf-8"?>
 
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:id="@+id/widget_rl_1x1"
        android:layout_width="match_parent"
        android:layout_height="match_parent" 
        tools:context=".WidgetActivity_1x1">
 
        <ImageView
            android:id="@+id/widget_imageview_1x1"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:clickable="true"
            android:contentDescription="@string/empty"
            android:focusable="true" />
 
        <TextView
            android:id="@+id/line_info_1x1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginLeft="2dp"
            android:layout_marginRight="2dp"
            android:layout_marginTop="15dp"
            android:gravity="center"
            android:maxHeight="62dp"
            android:shadowColor="#ffffff"
            android:shadowDx="1"
            android:shadowDy="1"
            android:shadowRadius="1"
            android:text="@string/empty"
            android:textColor="#000000"
            android:textSize="10dp" />
 
        <TextView
            android:id="@+id/line_day_1x1"
            android:layout_width="match_parent"
            android:layout_height="30dp"
            android:layout_marginLeft="2dp"
            android:layout_marginRight="2dp"
            android:layout_marginTop="31dp"
            android:gravity="center|center_vertical"
            android:maxHeight="62dp"
            android:shadowColor="#ffffff"
            android:shadowDx="1"
            android:shadowDy="1"
            android:shadowRadius="1"
            android:text="@string/empty"
            android:textColor="#A40000"
            android:textSize="26dp"
            android:textStyle="bold" />
 
        <TextView
            android:id="@+id/line_info_bottom_1x1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginLeft="2dp"
            android:layout_marginRight="2dp"
            android:layout_marginTop="62dp"
            android:gravity="center"
            android:maxHeight="62dp"
            android:shadowColor="#ffffff"
            android:shadowDx="1"
            android:shadowDy="1"
            android:shadowRadius="1"
            android:text="@string/empty"
            android:textColor="#000000"
            android:textSize="10dp" />
 
        <TextView
            android:id="@+id/line_day_1x1_small"
            android:layout_width="match_parent"
            android:layout_height="28dp"
            android:layout_marginLeft="2dp"
            android:layout_marginRight="2dp"
            android:layout_marginTop="33dp"
            android:gravity="center|center_vertical"
            android:maxHeight="62dp"
            android:shadowColor="#ffffff"
            android:shadowDx="1"
            android:shadowDy="1"
            android:shadowRadius="1"
            android:text="@string/empty"
            android:textColor="#A40000"
            android:textSize="20dp"
            android:textStyle="bold" />
 
    </RelativeLayout>
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
16.11.2012, 10:15
Ответы с готовыми решениями:

На какой тип Layout добавление View идёт быстрее
Если я хочу разместить 3 View в Layoutе. То в каком Layoutе View разместить быстрее(ну скорость добавления View выше) в LinearLayout в...

Qt ошибки: 1) не находит мой слот 2) не хочет размещать элементы на виджите правильно.
всем доброго времени суток! Это снова я и у меня опять ничего не работает в этом Qt. файл Widget.h #ifndef WIDGET_H #define...

Как правильно размещать классы
Доброго времени суток. При написании проекта, состоящего из большого количества файлов из-за путаницы и непонятных багов возник вопрос...

2
 Аватар для kvaka
31 / 31 / 3
Регистрация: 26.06.2012
Сообщений: 166
16.11.2012, 11:04
http://developer.android.com/t... index.html
Не стоит делать разметку приложения под одно конкретное устройство. Отдельные вещи можно фиксировать, использовать отдельные разметки для различных размеров экрана, пользоваться параметром weight
1
 Аватар для dubok79
325 / 123 / 10
Регистрация: 01.11.2012
Сообщений: 587
16.11.2012, 12:56  [ТС]
Разобрался, все получилось как надо. Спасибо
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
16.11.2012, 12:56
Помогаю со студенческими работами здесь

Как правильно размещать чужой материал
Ситуация такая. На сайте довольно много уникальных страниц. Хочу публиковать на сайте новости по теме с других сайтов (с новостных). ...

Как правильно размещать несколько картинок в header
как правильно размещать несколько картинок в header? попробовал создать блок слева и добавить руку с помощью тега aside, но иконки съехали...

Как правильно размещать свои статьи с др. источников у себя на сайте?
Народ, как правильно ссылаться на пресс-релиз о моём сайте (хочу поместить текст размещённого в одной из служб размещения...

Как правильно размещать таблицу прерываний (в ATmega 328 в частности)?
.cseg ; Выбор сегмента программного кода .org 0 ; Установка текущего адреса на ноль jmp RESET ;0x0000 RESET - сброс ;...

Как правильно размещать посты на форумах, что бы они проходили модерацию
Здравствуйте гуру SEO. Нужны Ваши советы. Я несколько раз размещал посты на форумах по моей тематики блога. Но все удалялись...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru