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

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

Войти
Регистрация
Восстановить пароль
 
contedevel
57 / 55 / 8
Регистрация: 07.10.2012
Сообщений: 598
#1

Переопределить стиль диалога - Программирование Android

05.04.2015, 05:57. Просмотров 808. Ответов 2
Метки нет (Все метки)

Здравствуйте!
Никак не получается корректно переопределить стиль диалога.
Пытаюсь так:
Кликните здесь для просмотра всего текста
XML
1
2
3
4
5
6
7
8
9
10
11
<style name="Theme.Paper.Dialog" parent="Theme.AppCompat.Light.Dialog">
        <item name="android:fullDark">@color/white</item>
        <item name="android:topDark">@color/white</item>
        <item name="android:centerDark">@color/white</item>
        <item name="android:bottomDark">@color/white</item>
        <item name="android:fullBright">@color/white</item>
        <item name="android:centerBright">@color/white</item>
        <item name="android:bottomBright">@color/white</item>
        <item name="android:bottomMedium">@color/white</item>
        <item name="android:centerMedium">@color/white</item>
    </style>


Это переопределило цвет фона. Как мне переопределить заголовок и кнопки диалога, а также убрать разделительную полосу между заголовком и самим диалогом? Очень необходимо. Буду признателен за помощь!

Добавлено через 17 часов 30 минут
В общем в такая стилизация получилась:
Кликните здесь для просмотра всего текста
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
<?xml version="1.0" encoding="utf-8"?>
<resources>
 
    <style name="Theme.Paper" parent="Theme.AppCompat.Light.NoActionBar">
        <!-- customize the color palette -->
        <item name="colorPrimary">@color/primary</item>
        <item name="colorPrimaryDark">@color/primary_dark</item>
        <item name="colorAccent">@color/accent</item>
        <item name="android:alertDialogStyle">@style/Theme.Paper.AlertDialogStyle</item>
        <item name="android:alertDialogTheme">@style/Theme.Paper.AlertDialog</item>
    </style>
 
    <style name="Theme.Paper.AlertDialogStyle" parent="Theme.AppCompat.Dialog">
        <item name="android:fullDark">@color/white</item>
        <item name="android:topDark">@color/white</item>
        <item name="android:centerDark">@color/white</item>
        <item name="android:bottomDark">@color/white</item>
        <item name="android:fullBright">@color/white</item>
        <item name="android:centerBright">@color/white</item>
        <item name="android:bottomBright">@color/white</item>
        <item name="android:bottomMedium">@color/white</item>
        <item name="android:centerMedium">@color/white</item>
    </style>
 
    <style name="Theme.Paper.AlertDialog.Title">
        <item name="android:maxLines">2</item>
        <item name="android:scrollHorizontally">true</item>
    </style>
 
    <style name="Theme.Paper.AlertDialog.TextAppearanceMedium">
        <!-- Set text size and color of message here -->
        <item name="android:textSize">16sp</item>
        <item name="android:textColor">@color/black_54</item>
    </style>
 
    <style name="Theme.Paper.AlertDialog.TextAppearanceLarge">
        <!-- Set text size and color of title -->
        <item name="android:textSize">20sp</item>
        <item name="android:textColor">@color/black_87</item>
    </style>
 
    <style name="Theme.Paper.AlertDialog">
        <item name="android:windowBackground">@android:color/transparent</item>
        <item name="android:windowTitleStyle">@style/Theme.Paper.AlertDialog.Title</item>
        <item name="android:windowContentOverlay">@null</item>
        <item name="android:windowMinWidthMajor">@android:dimen/dialog_min_width_major</item>
        <item name="android:windowMinWidthMinor">@android:dimen/dialog_min_width_minor</item>
        <item name="android:windowIsFloating">true</item>
        <item name="android:textAppearanceMedium">@style/Theme.Paper.AlertDialog.TextAppearanceMedium</item>
        <item name="android:textAppearanceLarge">@style/Theme.Paper.AlertDialog.TextAppearanceLarge</item>
 
        <item name="android:buttonBarStyle">@style/Theme.Paper.AlertDialog.ButtonBar</item>
        <item name="android:buttonBarButtonStyle">@style/Theme.Paper.FlatButton</item>
    </style>
 
    <style name="Theme.Paper.FlatButton">
        <!-- Set background drawable and text size of the buttons here -->
        <item name="android:background">@drawable/bg_dialog_button</item>
        <item name="android:textSize">14sp</item>
        <item name="android:textColor">@color/primary</item>
        <item name="android:layout_height">36dp</item>
        <item name="android:maxHeight">36dp</item>
        <item name="android:minHeight">36dp</item>
        <item name="android:minWidth">64dp</item>
        <item name="android:textAllCaps">true</item>
        <item name="android:paddingLeft">8dp</item>
        <item name="android:paddingRight">8dp</item>
        <item name="android:layout_marginLeft">4dp</item>
        <item name="android:layout_marginRight">4dp</item>
    </style>
 
    <style name="Theme.Paper.AlertDialog.ButtonBar">
        <!-- Define a background for the button bar and a divider between the buttons here -->
        <item name="android:divider">@android:color/transparent</item>
        <item name="android:dividerPadding">0dp</item>
        <item name="android:showDividers">none</item>
        <item name="android:background">@color/white</item>
        <item name="android:layout_height">48dp</item>
        <item name="android:gravity">center_vertical|right</item>
    </style>
 
</resources>


Но вся эта стилизация на Android 2.2 изменила только фон, остальное он не видит, на новых версиях все нормально.... В чем может быть проблема?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.04.2015, 05:57
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Переопределить стиль диалога (Программирование Android):

Вызов диалога из диалога - Программирование Android
Есть диалог, как сделать чтобы при выборе определенной позиции в это диалоге открывался другой диалог? case 0: AlertDialog.Builder...

Переопределить onDismiss у DialogFragment - Программирование Android
Имеется класс, наследованный от DialogFragment. Хочется переопределить onDismiss у DialogFragment так, чтобы можно было ловить нажатия...

Как переопределить диалоговое окно с целью кастомизации? - Программирование Android
Здравствуйте! Решил в своем приложении переопределить тему Theme.Holo.Light.NoActionBar. С кнопками получилось, а вот как изменить...

Дисклеймер в виде диалога - Программирование Android
Как лучше создать дисклеймер в виде диалогового окна: нажимаешь на кнопку &quot;Согласен&quot;, он больше не показывается, нажимаешь кнопку &quot;Не...

Дождаться закрытия диалога - Программирование Android
Один и тот же диалог используется в двух активити. Т.к. его реализация достаточно громоздка, пытаюсь его использовать повторно, а не...

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

2
fgtmenow
75 / 75 / 7
Регистрация: 29.03.2012
Сообщений: 254
05.04.2015, 13:21 #2
не мучайся со стилями, лучше просто сделай кастомный диалог
http://androidexample.com/Custom_Dia...id=88&aaid=111
1
contedevel
57 / 55 / 8
Регистрация: 07.10.2012
Сообщений: 598
05.04.2015, 15:21  [ТС] #3
Цитата Сообщение от fgtmenow Посмотреть сообщение
не мучайся со стилями, лучше просто сделай кастомный диалог
Приходится мучится, я готовое приложение обновляю, переделывать все диалоги на свои или разрабатывать класс поддержки и билдер к нему, ни чуть не легче стилизации
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.04.2015, 15:21
Привет! Вот еще темы с ответами:

Реализация диалога android - Программирование Android
Доброго времени суток. Решил написать простенький месседжер, и столкнулся с такой проблемой: Не знаю как это называется и как такое...

Получить информацию из диалога - Программирование Android
Всем привет! Есть в методе onCreate: new AlertDialog.Builder(this) .setView(R.layout.dialog_signin) ...

Отслеживание закрытия диалога - Программирование Android
Здравствуйте! Имеется вот такой класс: package com.contedevel.timetable; import java.util.ArrayList; import java.util.List; ...

Создание своего простейшего диалога - Программирование Android
Добрый день! Решил разработать свой простой диалог (универсальный отдельный класс) и многократно использовать его (вызывать) из разных...


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

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

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