Поместите ImageButton в верхний левый угол - PullRequest
0 голосов
/ 28 мая 2020

У меня очень простой макет фрагмента (fragment_search. xml):

<?xml version="1.0" encoding="utf-8"?>
<layout 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">

    <androidx.constraintlayout.widget.ConstraintLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:context=".ui.review.SearchFragment">

        <ImageButton
            android:id="@+id/search_bar_button"
            android:layout_width="48dp"
            android:layout_height="48dp"
            android:contentDescription="@string/switch_to_search_bar"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent"
            app:srcCompat="@drawable/ic_search_bar" />

        <TextView
            android:id="@+id/text_search"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="center_horizontal"
            android:layout_marginStart="8dp"
            android:layout_marginTop="8dp"
            android:layout_marginEnd="8dp"
            android:textAlignment="center"
            android:textSize="20sp"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent" />


    </androidx.constraintlayout.widget.ConstraintLayout>
</layout>

Фрагмент размещен в activity_main. xml:

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.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:id="@+id/container"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingTop="?attr/actionBarSize">

    <com.google.android.material.bottomnavigation.BottomNavigationView
        android:id="@+id/nav_view"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_marginStart="0dp"
        android:layout_marginEnd="0dp"
        android:background="?android:attr/windowBackground"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:menu="@menu/bottom_nav_menu" />

    <fragment
        android:id="@+id/nav_host_fragment"
        android:name="androidx.navigation.fragment.NavHostFragment"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:defaultNavHost="true"
        app:layout_constraintBottom_toTopOf="@id/nav_view"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintVertical_bias="1.0"
        app:navGraph="@navigation/mobile_navigation" />

</androidx.constraintlayout.widget.ConstraintLayout>

Я намерен чтобы ImageButton в fragment_search. xml отображался в верхнем левом углу без пробелов. По какой-то причине, когда я запускаю приложение, значок появляется с большим промежутком вверху и небольшим промежутком слева:

Screenshot of app

В представлении «Дизайн» , кнопка появляется в верхнем левом углу, но с зазором в 1 мм между кнопкой и краем экрана.

Почему кнопка не отображается в верхнем левом углу при запуске приложения, и как мне это исправить?

Ответы [ 2 ]

0 голосов
/ 29 мая 2020

удалить верхний отступ из активности root макет (contraintlayout) в activity_main. xml

android: paddingTop = "? Attr / actionBarSize"

0 голосов
/ 28 мая 2020

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...