Страница 1 из 1
android:style/Theme.Dialog
Добавлено: 22 фев 2014, 00:33
IgNa
Добрый день
android:style/Theme.Dialog
Очень успешно применял данный стиль к ряду активити - что бы придать эффект диалогового окна.
Но на новом устройстве столкнулся с такой проблемой - ширина активити ,к которой применен данный стиль, суживается до где то 1,3 экрана, искажая её содержимое. Скорее всего это глюк связанный с тем, что устройство не хочет считаться с записью в манифесте что ориентация горизонтальная и выдает ширину активити, адекватную для вертикальной ориентации ( но это лишь мои догадки)
Ну и вопрос:
Можно ли как то отредактировать тему Theme.Dialog, а если быть точным ширину активити в ней ?
или что еще можно придумать...
Re: android:style/Theme.Dialog
Добавлено: 22 фев 2014, 00:43
rezak90
ты как всегда путаешь Ж с пальцем... при чем здесь диалог и активити)))
Re: android:style/Theme.Dialog
Добавлено: 22 фев 2014, 01:34
IgNa
Поправочка:
обнаружилось что у меня есть ещё активити, где в манифесте задействованы другие стили, например
android:theme="@style/Theme.Transparent"
И у эти активити тоже открываются шириной приблиз в 1.3 экрана
Выходит какой бы стиль не применил на данном девайсе активити станет уже
А двух других ( более старых девайсах) тоже приложение отображается как надо
Продолжаю исследование...
Re: android:style/Theme.Dialog
Добавлено: 22 фев 2014, 01:43
IgNa
rezak90, знаешь есть такие папки values ? values-v11 например
У меня есть такая догадка что мой девайс не найдя стили в папке предназначенной для него, берет их из папок для низших созданий - и поэтому получается эффект сужения
Может быть такое ?
Re: android:style/Theme.Dialog
Добавлено: 22 фев 2014, 02:05
IgNa
или то что у меня targetSdkVersion написано "8" хотя для нового девайса можно и больше
Re: android:style/Theme.Dialog
Добавлено: 22 фев 2014, 03:30
IgNa
проблему решил одной строчкой голубого цвета )
DisplayMetrics displaymetrics = getResources().getDisplayMetrics();
int dw = displaymetrics.widthPixels;
int dh =displaymetrics.heightPixels;
getWindow().setLayout(dw-dw/5, dh-dh/5);
Оказывается можно легко одной строчкой задавать размеры активити - к которой применен стиль диалога
http://stackoverflow.com/questions/2634 ... alog-width
Re: android:style/Theme.Dialog
Добавлено: 22 фев 2014, 11:31
rezak90
я так и не понял при чем здесь активити и диалог... и задавать размер активити))) ты вдумайся что ты говоришь
Re: android:style/Theme.Dialog
Добавлено: 24 фев 2014, 07:19
klblk
rezak90 писал(а):я так и не понял при чем здесь активити и диалог... и задавать размер активити))) ты вдумайся что ты говоришь
У активити можно задать тему диалога (например: android:style/Theme.Dialog), при запуске эта активити будет выглядеть как диалог (не на весь экран). Не знаю насколько это хорошо или плохо, но иногда может быть удобно.