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

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

Войти
Регистрация
Восстановить пароль
 
klim76
20 / 14 / 2
Регистрация: 10.06.2016
Сообщений: 142
#1

Нужны советы по разметке - Программирование Android

17.08.2016, 22:09. Просмотров 207. Ответов 3
Метки нет (Все метки)

1) Как нарисовать "границу" элемента, сейчас просто делаю "подкладку" LinearLayout с паддингом 1dp и нужным цветом заливки. Может можно как то по другому? поделитесь опытом
2) Можно ли заголовки Tab-ов запихнуть на actionbar?
3) Нужно нарисовать "аля календарь" - 7 столбиков/6 строчек так что бы получились идеально квадратные ячейки - GridLayout?
4) Сворачивание вьюхи(под спойлером):
Кликните здесь для просмотра всего текста

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
<LinearLayout
        android:id="@+id/order_map_contacts"
        android:layout_width="300dp"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:layout_alignParentRight="true"
        android:background="@color/background_white"
        android:padding="5dp"
        android:layout_margin="10dp">
        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:padding="3dp">
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Информация о заказе"
                android:textStyle="bold"/>
            <View
                android:layout_width="15dp"
                android:layout_height="3dp"
                android:layout_centerVertical="true"
                android:background="@color/text_black"
                android:layout_alignParentRight="true"/>
        </RelativeLayout>
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="@color/driver_green"
            android:layout_margin="2dp"
            android:padding="1dp"
            android:layout_weight="1">
            <RelativeLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:background="@color/background_white">
                <LinearLayout
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:orientation="vertical"
                    android:layout_margin="5dp"
                    android:layout_centerVertical="true">
                    <TextView
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Клиент:"
                        android:textStyle="bold"/>
                    <TextView
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Короткова Надежда Игоревна"/>
                </LinearLayout>
                <ImageView
                    android:layout_width="40dp"
                    android:layout_height="40dp"
                    android:layout_alignParentRight="true"
                    android:layout_margin="5dp"
                    android:src="@drawable/phone_ball"/>
            </RelativeLayout>
        </LinearLayout>

нужно сделать что бы при нажатии на <View/> видимым оставался только он а все остальное "сворачивалось". желательно еще и анимированно
Заранее спасибо
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.08.2016, 22:09
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Нужны советы по разметке (Программирование Android):

FFmpegMediaPlayer для Андроид. Нужны советы - Программирование Android
Добрый вечер! Есть на форуме люди, кто использовал библиотеки FFMpegMediaPlayer для андроида из github от wseemann? Вопрос тривиальный...

Посоветуйте хороший справочник по разметке - Программирование Android
Здравствуйте! Вот мне для понимания самые сложные языки, с которыми я сталкивался, являются CSS и XML. По CSS я нашёл ну просто очень...

Если смысл в xml разметке? - Программирование Android
Здравствуйте. Возможно, кому-то покажется мой вопрос невежественным, но все же: Есть ли смысл пользоваться xml разметкой, если все...

Поиск ImageView по названию использованному в разметке - Программирование Android
Здравствуйте, уважаемые участники форума! Хочу спросить, у меня в приложении есть много imageView которые объявлены через xml разметку....

Как расположить на одном уровне 2 элемента в разметке? - Программирование Android
Вот разметка &lt;RelativeLayout android:layout_width=&quot;match_parent&quot; ...

Как убрать верхний прямоугольник в разметке или изменить надпись на нём? - Программирование Android
Доброго дня. Как в разметке активити убрать верхний прямоугольник и как можно изменить надпись на нём? Даже не знаю как он называется,...

3
Pablito
2525 / 2004 / 624
Регистрация: 12.05.2014
Сообщений: 7,030
Завершенные тесты: 1
18.08.2016, 11:26 #2
1.
Кликните здесь для просмотра всего текста
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
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/order_map_contacts"
    android:layout_width="300dp"
    android:layout_height="wrap_content"
    android:layout_alignParentEnd="true"
    android:layout_alignParentRight="true"
    android:layout_margin="10dp"
    android:background="#fff"
    android:orientation="vertical"
    android:padding="5dp">
 
    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:padding="3dp">
 
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Информация о заказе"
            android:textStyle="bold" />
 
        <View
            android:layout_width="15dp"
            android:layout_height="3dp"
            android:layout_alignParentEnd="true"
            android:layout_alignParentRight="true"
            android:layout_centerVertical="true"
            android:background="#000" />
    </RelativeLayout>
 
    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:background="@drawable/border">
 
        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerVertical="true"
            android:layout_margin="5dp"
            android:orientation="vertical">
 
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Клиент:"
                android:textStyle="bold" />
 
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Короткова Надежда Игоревна" />
        </LinearLayout>
 
        <ImageView
            android:layout_width="40dp"
            android:layout_height="40dp"
            android:layout_alignParentEnd="true"
            android:layout_alignParentRight="true"
            android:layout_margin="5dp"
            android:src="@drawable/phone_ball" />
    </RelativeLayout>
</LinearLayout>

и в папке drawable создаем файл, например border.xml
XML
1
2
3
4
5
6
7
8
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <stroke
        android:width="0.5dp"
        android:color="#7F7" />
    <!--<corners android:radius="4dp"/>-->
</shape>
2. да можно, но получится уродство (imho)
ничего не мешает внутрь Toolbar положить таблаяут и все остальное
3. если ячейки должны быть идеально квардратными, значит и сам лаяут должен быть идеально квадратным, иначе нам надо знать размеры дочерних элементов
вообще не проблема сделать квадратные кнопки или квадратный лаяут и в нем кнопки с весами, но их должно быть одинаково по осям, то есть не 6 на 7, а 7 на 7
иначе взникает вопрос как считать размер дочерних элементов

4. лениво
1
Pablito
2525 / 2004 / 624
Регистрация: 12.05.2014
Сообщений: 7,030
Завершенные тесты: 1
18.08.2016, 12:03 #3
вот, на скорую руку пример с новым GridLayout и кастомной вьюшкой, 3х2 элемента, что бы не копипастить все 42 штуки
Кликните здесь для просмотра всего текста
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
import android.content.Context;
import android.util.AttributeSet;
import android.view.View;
 
public class SquareView extends View { // вместо View можно наследоваться отлюбого лаяута
 
    public SquareView(Context context, AttributeSet attrs) {
        super(context, attrs);
    }
 
    @Override
    protected void onMeasure(int w, int h) {
        super.onMeasure(w, w);
        setMeasuredDimension(w, w);
    }
}

Кликните здесь для просмотра всего текста
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
<android.support.v7.widget.GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/order_map_contacts"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:columnCount="3"
    app:rowCount="2">
 
    <com.example.mytestapplication.SquareView
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_margin="2dp"
        android:background="#575"
        app:layout_columnWeight="1" />
 
    <com.example.mytestapplication.SquareView
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_margin="2dp"
        android:background="#575"
        app:layout_columnWeight="1" />
 
    <com.example.mytestapplication.SquareView
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_margin="2dp"
        android:background="#575"
        app:layout_columnWeight="1" />
 
    <com.example.mytestapplication.SquareView
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_margin="2dp"
        android:background="#575"
        app:layout_columnWeight="1" />
 
    <com.example.mytestapplication.SquareView
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_margin="2dp"
        android:background="#575"
        app:layout_columnWeight="1" />
 
    <com.example.mytestapplication.SquareView
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_margin="2dp"
        android:background="#575"
        app:layout_columnWeight="1" />
 
</android.support.v7.widget.GridLayout>

Нужны советы по разметке
1
klim76
20 / 14 / 2
Регистрация: 10.06.2016
Сообщений: 142
18.08.2016, 14:47  [ТС] #4
Паблито, супер! спасибо!
0
18.08.2016, 14:47
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.08.2016, 14:47
Привет! Вот еще темы с ответами:

Google maps метод поиска фрагмента карт на разметке для разных версий андроид - Программирование Android
Столкнулся с такой проблемой. в андройде 6 работает один метод поиска фрагмента карт на разметке а в 5 и ранее - другой. //api 21+ ...

Советы по выбору фрэймворка - Программирование
Здравствуйте,я потихоньку ваяю приложение для андроида на java. и вот стало интересно как можно портировать приложение на iOS, а еще лучше...

Советы по коду #1 (навичок в Java) - Программирование Android
Уже который раз берусь изучать Java, вот пишу простенькое приложение, хотел бы услышать советы и критику по коду, а еще хочу попросить...

Советы по поводу создания приложения - Программирование Android
Всем привет. Есть идея, которую хочу обсудить, и очень надеюсь, что найдётся, кто поможет её реализовать. По сложности приложение очень...


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

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

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