Форум программистов, компьютерный форум, киберфорум
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
ed8009
7 / 7 / 1
Регистрация: 31.08.2011
Сообщений: 135
#1

Разметка XML - Программирование Android

20.08.2014, 18:06. Просмотров 869. Ответов 4
Метки нет (Все метки)

Здравствуйте, сделал разметку, но она не эффективна на разных разрешениях экранов, т.к. я задавал ширину и высоту и расположение явно. Подскажите, как мне можно это подправить?

Вот картинка на результат:

Разметка XML

Вот код xml:

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
89
90
91
92
93
94
95
96
97
98
99
100
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/backgroundpattern"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="ru.mitasov.mnemotehnika.GameActivity$PlaceholderFragment" >
 
<RelativeLayout
    android:id="@+id/relativeLayout1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="144dp" >
 
    <Button
        android:id="@+id/NewGameWordsButton"
        android:layout_width="60dp"
        android:layout_height="60dp"
        android:layout_marginLeft="20dp"
        android:background="@drawable/shape_oval"
        android:text="@string/Level1" />
 
    <Button
        android:id="@+id/button2"
        android:layout_width="60dp"
        android:layout_height="60dp"
        android:layout_marginLeft="120dp"
        android:background="@drawable/shape_oval"
        android:text="@string/Level2" />
 
    <Button
        android:id="@+id/button3"
        android:layout_width="60dp"
        android:layout_height="60dp"
        android:layout_marginLeft="220dp"
        android:background="@drawable/shape_oval"
        android:text="@string/Level3" />
</RelativeLayout>
 
<RelativeLayout
    android:id="@+id/relativeLayout2"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/relativeLayout1"        
    android:layout_below="@+id/relativeLayout1" >
 
    <Button
        android:id="@+id/button4"
        android:layout_width="60dp"
        android:layout_height="60dp"
        android:layout_marginLeft="70dp"
        android:background="@drawable/shape_oval"
        android:text="@string/Level4" />
 
    <Button
        android:id="@+id/button5"
        android:layout_width="60dp"
        android:layout_height="60dp"
        android:layout_marginLeft="170dp"
        android:background="@drawable/shape_oval"
        android:text="@string/Level5" />
</RelativeLayout>
 
<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/relativeLayout2"        
    android:layout_below="@+id/relativeLayout2" >
 
    <Button
        android:id="@+id/button6"
        android:layout_width="60dp"
        android:layout_height="60dp"
        android:layout_marginLeft="20dp"
        android:background="@drawable/shape_oval"
        android:text="@string/Level6" />
 
    <Button
        android:id="@+id/button7"
        android:layout_width="60dp"
        android:layout_height="60dp"
        android:layout_marginLeft="120dp"
        android:background="@drawable/shape_oval"
        android:text="@string/Level7" />
 
    <Button
        android:id="@+id/button8"
        android:layout_width="60dp"
        android:layout_height="60dp"
        android:layout_marginLeft="220dp"
        android:background="@drawable/shape_oval"
        android:text="@string/Level8" />
</RelativeLayout>
 
</RelativeLayout>
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.08.2014, 18:06
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Разметка XML (Программирование Android):

XML разметка. Сделать ровненькие столбцы - Программирование Android
Добрый вечер. Третий день не могу исправить ошибку. Вот код: &lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt; &lt;TableLayout...

RecyclerView с картинками или xml разметка что лучше? - Программирование Android
У меня есть 2 вопроса, может вам они покажутся глупыми, но я в этом пока что не очень разбираюсь: 1) RecyclerView отображает список...

Разметка - Программирование Android
Подскажите как сделать такую разметку на всех экранах? У меня основная сложность в том что я не могу синхронизировать размеры элементов....

Разметка GridView - Программирование Android
Как можно сделать разметку GridView, чтобы одна верхняя ячейка была по всей ширине экрана, а остальные - ниже шли обычно таблицей??Как так...

Html разметка - Программирование Android
Можно ли при помощи Java как то создать html файл и заполнить его содержимое определенной html разметкой, которую затем можно запустить...

Разметка элементов - Программирование Android
На первый взгляд простейшая задача - нарисовать калькулятор в таком стиле: И первое, что приходит на ум - использовать GridLayout...

4
waycomm
2 / 2 / 1
Регистрация: 20.07.2014
Сообщений: 18
20.08.2014, 23:19 #2
Использовать резиновую верстку: размеры и расположение элементов задавать не в XML файле, а в программном коде. Сначала определять разрешение экрана, а затем делить эту величину на какое-то число, подгоняя значения ширины/высоты для круга. Так же и для расположения
1
KorWinXXI
4 / 4 / 1
Регистрация: 27.06.2014
Сообщений: 36
21.08.2014, 11:55 #3
ed8009, Правильно будет работать с разными layout-ами (small, large, xlarge...) и прописывать размеры для набора разрешений в values-sw720dp и т.д. Разобраться вполне реально, почитав статьи на developer.android.com (офф сайте). Вот ссылка http://developer.android.com/guide/practices/screens_support.html

Добавлено через 42 секунды
ed8009, и вот еще уроки вдогонку http://developer.android.com/training/multiscreen/index.html
1
kirawa
34 / 34 / 1
Регистрация: 12.11.2013
Сообщений: 338
21.08.2014, 16:35 #4
используй LinearLayout'ы и все будет в шоколаде
0
ed8009
7 / 7 / 1
Регистрация: 31.08.2011
Сообщений: 135
21.08.2014, 17:04  [ТС] #5
Проблема решена, кому интересно, добро пожаловать сюда: http://hashcode.ru/questions/355166/...82%D0%BA%D1%83
0
21.08.2014, 17:04
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.08.2014, 17:04
Привет! Вот еще темы с ответами:

Разметка приложения - Программирование Android
На вложенном скриншоте разметка моего приложения. Нужно чтобы шесть кнопок были размером во весь экран на любом устройстве. Как правильно...

Разметка layout - Программирование Android
Хочу сделать вот такую разметку. Т.е. как-бы объединить ячейки, чтобы можно было в эту ячейку добавить компонент. Как это можно сделать?

Разметка activity - Программирование Android
Здравствуйте. У меня в активити присутствует webView, за ним - listView и внизу кнопки для навигации. Т.к. webView используется не всегда я...

Разметка для RadioGroup - Программирование Android
Делаю карточку вопрос-варианты ответа. Выглядит сейчас она так, как на прикреплённом скриншоте, без редактирования, как есть. Разметка...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru