Гость
Форумы / Android [игнор отключен] [закрыт для гостей] / Размер Title при разных ориентациях экрана / 21 сообщений из 21, страница 1 из 1
17.01.2017, 11:58
    #39385954
sann-x
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Размер Title при разных ориентациях экрана
Столкнулся с проблемой: при портретной ориентации экрана размер заголовка норм, при ландшафтной - маленький. В принципе, проблема решаема, например тут . Для главной активити все стало норм. А вот для всех остальных активити проблема осталась. Видимо, фиск применяется только на главную активити. Как решить проблему на всех активити?
...
Рейтинг: 0 / 0
17.01.2017, 12:19
    #39385977
wadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Размер Title при разных ориентациях экрана
sann-xКак решить проблему на всех активити?
Применить стиль ко всем активностям?

П.С. Для UI нет разделения на главную или не главную активность, кроме того, что с выходом из главной нужно "усыпать" приложение.
...
Рейтинг: 0 / 0
17.01.2017, 12:24
    #39385982
sann-x
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Размер Title при разных ориентациях экрана
wadmanПрименить стиль ко всем активностям? А как?
...
Рейтинг: 0 / 0
17.01.2017, 12:35
    #39386001
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Размер Title при разных ориентациях экрана
sann-xА вот для всех остальных активити проблема осталась.
Код: sql
1.
<include layout="@layout/toolbar"/>
...
Рейтинг: 0 / 0
17.01.2017, 12:47
    #39386009
sann-x
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Размер Title при разных ориентациях экрана
Petro123,

В своем ПО я использую шаблон Navigation Drawer Activity. Не могу придумать, как применить ваш совет.
...
Рейтинг: 0 / 0
17.01.2017, 13:02
    #39386017
wadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Размер Title при разных ориентациях экрана
sann-xВ своем ПО я использую шаблон Navigation Drawer Activity. Не могу придумать, как применить ваш совет.
Покажи xml активности, где "как надо" и где не так, как хочется.
И картинки желательно.
...
Рейтинг: 0 / 0
17.01.2017, 14:26
    #39386091
sann-x
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Размер Title при разных ориентациях экрана
Код: 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.
<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/drawer_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true"
    tools:openDrawer="start">

    <include
        layout="@layout/app_bar_navigation"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

    <android.support.design.widget.NavigationView
        android:id="@+id/nav_view"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_gravity="start"
        android:fitsSystemWindows="true"
        app:itemIconTint="@color/colorAccent"
        app:itemTextColor="@color/colorPrimaryDark"
        app:headerLayout="@layout/nav_header_navigation"
        app:menu="@menu/activity_navigation_drawer" />

</android.support.v4.widget.DrawerLayout>



В разметке выше есть include "@layout/app_bar_navigation". В нем вот что:
Код: 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.
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true"
    tools:context="net.client.MainActivity">

    <android.support.design.widget.AppBarLayout
        android:id="@+id/app_bar_layout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:theme="@style/AppTheme.AppBarOverlay">

        <android.support.v7.widget.Toolbar
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            android:background="?attr/colorPrimary"
            app:titleTextAppearance="@style/ToolbarTitle"
            app:popupTheme="@style/AppTheme.PopupOverlay" />

    </android.support.design.widget.AppBarLayout>

    <include layout="@layout/activity_main" />

</android.support.design.widget.CoordinatorLayout>



В этой разметке я указал в titleTextAppearance свой стиль. Также в этом инклюде другой include - лайоут главной активити. Вот и получается, что влиять на текст заголовка получается только у главной активити.

Вот как выглядят другие активити в ландшатфе:
...
Рейтинг: 0 / 0
17.01.2017, 14:38
    #39386105
wadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Размер Title при разных ориентациях экрана
Дак тут фреймы напрашиваются. Тогда заголовок всегда будет один.
...
Рейтинг: 0 / 0
17.01.2017, 15:08
    #39386136
sann-x
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Размер Title при разных ориентациях экрана
wadman,

А еще есть варианты?
...
Рейтинг: 0 / 0
17.01.2017, 15:47
    #39386167
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Размер Title при разных ориентациях экрана
sann-xшаблон Navigation Drawer Activity.
а ты просто попробуй активити ниже и вставляемый toolbar вторым файлом в каждый активити.
Кода ведь меньше?

activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout xmlns:android=" http://schemas.android.com/apk/res/android"
xmlns:app=" http://schemas.android.com/apk/res-auto"
xmlns:tools=" http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
tools:context=".MainActivity">
<include layout="@layout/toolbar" />
</android.support.design.widget.CoordinatorLayout>

toolbar.xml

<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.Toolbar xmlns:android=" http://schemas.android.com/apk/res/android"
android:id="@+id/toolbar_actionbar"
android:layout_width="match_parent"
android:layout_height="?android:actionBarSize"
android:background="@color/colorPrimary"
android:theme="@style/ThemeOverlay.AppCompat.Dark"
/>
...
Рейтинг: 0 / 0
17.01.2017, 15:50
    #39386168
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Размер Title при разных ориентациях экрана
sann-x,
почему на скрине куча экрана пустое? Т.е. почему меню слева не занимает часть экрана?
...
Рейтинг: 0 / 0
17.01.2017, 16:19
    #39386200
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Размер Title при разных ориентациях экрана
sann-x,
я понял про твой шаблон).
Ты делаешь кнопку-гамбургер чтобы выехало меню слева.
Вопрос по дизайну.
Я бы так не делал, если у меня всего 2-4 кнопки. Только если там действительно много п.п. меню.
А на 2-4 кнопки есть короткий код что я привёл выше.
...
Рейтинг: 0 / 0
18.01.2017, 08:24
    #39386588
sann-x
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Размер Title при разных ориентациях экрана
Petro123,

Шторка слева полностью заполнена пунктами. Без нее никак. Также не вижу, как ваш совет с <include layout="@layout/toolbar" /> применить ко всем активити. Ведь изначальный xml, реализующий гамбургер через include ссылается на "layout="@layout/app_bar_navigation"", в нем уже есть ссылка на activity_main. Даже если я включу <include layout="@layout/toolbar" /> во все активити, то изначальный xml будет ссылаться только на activity_main.
...
Рейтинг: 0 / 0
18.01.2017, 11:46
    #39386705
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Размер Title при разных ориентациях экрана
sann-x,
У меня совет по include был для "без шторки". Как это делается для шторки не подскажу. Увы.
...
Рейтинг: 0 / 0
19.01.2017, 13:02
    #39387565
sann-x
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Размер Title при разных ориентациях экрана
Проблему решил так.

Нужно в стили добавить это:
Код: xml
1.
2.
3.
<style name="ToolbarTitle" parent="@style/TextAppearance.Widget.AppCompat.Toolbar.Title">
  <item name="android:textSize">18sp</item>
</style>



Для всех активити (кроме главной), у которых есть свой layout xml-файл в проекте.
1. Создать activity_common.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.
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true">

    <android.support.design.widget.AppBarLayout
        android:id="@+id/app_bar_layout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:theme="@style/AppTheme.AppBarOverlay">

        <android.support.v7.widget.Toolbar
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            android:background="?attr/colorPrimary"
            app:titleTextAppearance="@style/ToolbarTitle"
            app:popupTheme="@style/AppTheme.PopupOverlay" />

    </android.support.design.widget.AppBarLayout>

    <ScrollView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:id="@+id/myScrollView"
        app:layout_behavior="@string/appbar_scrolling_view_behavior">
    </ScrollView>

</android.support.design.widget.CoordinatorLayout>


2. В манифесте в каждой активити указать:
Код: xml
1.
android:theme="@style/AppTheme.NoActionBar"


3. В onCreate каждой активити добавить код:
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
// установить общий для всех лайоут активити
setContentView(R.layout.activity_common);

// установить тулбар
Toolbar toolbar = (Toolbar) this.findViewById(R.id.toolbar);
setSupportActionBar(toolbar);

// Show the Up button in the action bar if activity is secondary
ActionBar actionBar = getSupportActionBar();
if (actionBar != null)
    actionBar.setDisplayHomeAsUpEnabled(true);

// расположить (inflate) layout этой активити в "activity_common" (родительским View будет ScrollView)
ScrollView scroll = (ScrollView) findViewById(R.id.myScrollView);
LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View view = inflater.inflate(R.layout.activity_about, null);
scroll.addView(view);



Для SettingsActivity (наследника AppCompatPreferenceActivity), у которой нет layout xml-файла в проекте.
1. Создать settings_toolbar.xml:
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.AppBarLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/app_bar_layout"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:theme="@style/AppTheme.AppBarOverlay">

    <android.support.v7.widget.Toolbar
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="?attr/actionBarSize"
        android:background="?attr/colorPrimary"
        app:titleTextAppearance="@style/ToolbarTitle"
        app:popupTheme="@style/AppTheme.PopupOverlay" />

</android.support.design.widget.AppBarLayout>


2. В res\values\styles.xml создать стиль:
Код: xml
1.
2.
3.
4.
<style name="AppTheme.NoActionBarSettings">
        <item name="windowActionBar">false</item>
        <item name="windowNoTitle">true</item>
    </style>


3. В res\values-v21\styles.xml создать стиль:
Код: xml
1.
2.
3.
4.
5.
 <style name="AppTheme.NoActionBarSettings">
        <item name="windowActionBar">false</item>
        <item name="windowNoTitle">true</item>
        <item name="android:windowDrawsSystemBarBackgrounds">true</item>
    </style>


4. В манифесте для SettingsActivity указать:
Код: xml
1.
android:theme="@style/AppTheme.NoActionBarSettings"


5. В onCreate SettingsActivity добавить код:
Код: java
1.
2.
3.
4.
5.
6.
ViewGroup root = (ViewGroup) findViewById(android.R.id.list).getParent().getParent().getParent();
AppBarLayout appBarLayout = (AppBarLayout) LayoutInflater.from(this).inflate(R.layout.settings_toolbar, root, false);
root.addView(appBarLayout, 0);
Toolbar toolbar = (Toolbar) this.findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
setupActionBar();
...
Рейтинг: 0 / 0
19.01.2017, 20:40
    #39387958
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Размер Title при разных ориентациях экрана
sann-x,
что то много кода для такой ерунды.
А что будет если мы переходим на ConstraintLayout как грозит гугл?
Для меня скрин выше выглядит нормально. Уменьшение шрифта вызвано уменьшением высоты экрана в ландшафтной ориентации.
Наверно поэтому и шрифт стал меньше при мЕньшей высоте Title bar.
IMHO
...
Рейтинг: 0 / 0
20.01.2017, 07:38
    #39388090
sann-x
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Размер Title при разных ориентациях экрана
Petro123,

нет там недоработка. Высота текста должна определяться не dp, а sp. В последнем случае размер не меняется.
...
Рейтинг: 0 / 0
20.01.2017, 10:45
    #39388200
Джибс
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Размер Title при разных ориентациях экрана
sann-xPetro123,

нет там недоработка. Высота текста должна определяться не dp, а sp. В последнем случае размер не меняется.

высота текста может устанавливаться как sp так и dp
...
Рейтинг: 0 / 0
20.01.2017, 10:50
    #39388203
sann-x
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Размер Title при разных ориентациях экрана
Джибс,

Дак можно как хошь, хоть px. Железо все стерпит. А для людей логиченее sp в заголовке, тогда нет заморочек с высотой текста, иначе будет мелко и неприятно смотрится.
...
Рейтинг: 0 / 0
20.01.2017, 10:57
    #39388214
Джибс
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Размер Title при разных ориентациях экрана
sann-xДжибс,

Дак можно как хошь, хоть px. Железо все стерпит. А для людей логиченее sp в заголовке, тогда нет заморочек с высотой текста, иначе будет мелко и неприятно смотрится.

ерунду говоришь

sp - если хочешь что бы шрифт был зависим от системных настроек размера шрифта
dp - шрифт не будет меняться если ты увеличишь или уменьшишь шрифт в настройках
...
Рейтинг: 0 / 0
21.01.2017, 11:02
    #39388863
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Размер Title при разных ориентациях экрана
sann-xPetro123,

нет там недоработка. Высота текста должна определяться не dp, а sp. В последнем случае размер не меняется.
мы о дизайне говорим?
Я позже приведу скрины сабжа при разной ориентации экрана.
У меня на мой взгляд дизайн вполне нормальный.
И уменьшение шрифта при уменьшении высоты Title bar вполне логично.
Ты же с этим борешься.
IMHO
...
Рейтинг: 0 / 0
Форумы / Android [игнор отключен] [закрыт для гостей] / Размер Title при разных ориентациях экрана / 21 сообщений из 21, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]