Добавить панель инструментов в limitedLayout макета фрагмента

Я пытаюсь добавить панель инструментов в макет ограничения, но вот результат, который я получаю:

введите здесь описание изображения

Как видите, он не занимает весь экран. Вот мой xml:

<android.support.constraint.ConstraintLayout 
    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"
    tools:context=".MainActivity">

    <android.support.v7.widget.Toolbar
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="?attr/actionBarSize"
        android:background="?attr/colorPrimary"
        android:theme="@style/ThemeOverlay.AppCompat.ActionBar"
        app:popupTheme="@style/ThemeOverlay.AppCompat.Light">

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Fragment title"/>

    </android.support.v7.widget.Toolbar>
</android.support.constraint.ConstraintLayout>

Ширина и длина ConstraintLayout устанавливаются в соответствии с родительским элементом (который должен быть экраном?), а ширина панели инструментов устанавливается в соответствии с шириной макета. Что мне не хватает?


person Marco Ripamonti    schedule 17.11.2018    source источник
comment
проверьте ответ на этот stackoverflow. com/questions/53086154/   -  person PushpikaWan    schedule 17.11.2018
comment
попробовать добавить пользовательскую панель инструментов?   -  person Mitesh Vanaliya    schedule 17.11.2018
comment
панель инструментов автоматически добавляется во фрагмент, если вы добавили пользовательский вид, а затем создайте файл пользовательского вида   -  person Mitesh Vanaliya    schedule 17.11.2018
comment
это активность xml или фрагмент xml?   -  person Mitesh Vanaliya    schedule 17.11.2018
comment
Это макет фрагмента   -  person Marco Ripamonti    schedule 17.11.2018
comment
Я думаю, что вы предоставили main_activity.xml .. пожалуйста, посмотрите файл макета, а также опубликуйте код фрагмента java-файла   -  person Ümañg ßürmån    schedule 17.11.2018


Ответы (3)


Попробуйте это, добавив этот контент на панель инструментов

android:contentInsetLeft="0dp"
    android:contentInsetStart="0dp"
    app:contentInsetLeft="0dp"
    app:contentInsetStart="0dp"
    android:contentInsetRight="0dp"
    android:contentInsetEnd="0dp"
    app:contentInsetRight="0dp"
    app:contentInsetEnd="0dp" 

Я получил это от Android: удалить левое поле из пользовательского макета панели действий. И вы также можете попробовать другие решения, если это не решит вашу проблему.

person PushpikaWan    schedule 17.11.2018
comment
Это ничего не изменило. - person Marco Ripamonti; 17.11.2018

попробуйте это, вы должны установить ограничениеTop для родителя, а также сделать ограничения соответствия значения ширины и установить начальное и конечное ограничение для родителя,

проверьте код ниже

<android.support.constraint.ConstraintLayout
    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"
    tools:context=".MainActivity">

    <android.support.v7.widget.Toolbar
        android:id="@+id/toolbar"
        android:layout_width="0dp"
        android:layout_height="?attr/actionBarSize"
        android:background="?attr/colorPrimary"
        android:theme="@style/ThemeOverlay.AppCompat.ActionBar"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:popupTheme="@style/ThemeOverlay.AppCompat.Light">

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Fragment title" />

    </android.support.v7.widget.Toolbar>
</android.support.constraint.ConstraintLayout>
person Ahmed Wahdan    schedule 17.11.2018
comment
Это не помогло. Ничего не изменилось. - person Marco Ripamonti; 17.11.2018
comment
поэтому, если вы используете фрагмент, проверьте, нет ли в макете фрейма или представлении фрагмента каких-либо отступов или полей в XML вашей активности. - person Ahmed Wahdan; 17.11.2018

Я решил эту проблему, поместив панель действий в основное действие вместо макета фрагмента.

person Marco Ripamonti    schedule 17.11.2018