Как мне заставить веб-вид вести себя правильно с сворачивающейся панелью инструментов и nestedscrollview? - PullRequest
0 голосов
/ 08 мая 2019

Я создал браузер с панелью инструментов вверху. Мне нужна была панель инструментов, чтобы прятаться на свитке. После нескольких дней борьбы с ним мне наконец удалось скрыть панель инструментов с вложенным видом прокрутки. Проблема в том, что как только панель инструментов стала работать так, как я хотел, веб-представление начало работать. Вверху между веб-обзором и панелью инструментов имеется примерно 3/4-дюймовый голубовато-зеленый промежуток. Веб-просмотр теперь только меньше, чем фактический размер экрана, независимо от содержания на сайте. Когда я прокручиваю вверх, веб-просмотр прокручивается прямо с экрана, оставляя весь экран с голубовато-зеленым цветом. Я пробовал несколько методов в Java main, чтобы попытаться исправить проблему, но все они приводят к сбою моего приложения, как только начинается это действие. Другая проблема, которая возникла, заключается в том, что обновление свайпов перестало работать. Он перестал работать, как только я развернул вложенное представление прокрутки. Я могу предоставить снимки экрана при необходимости. Я пробовал много разных устройств в формате XML. Некоторые из них создают ошибки, а другие приводят к сбою приложения. Эта настройка является наиболее близкой к фактическому желаемому результату. Вы увидите текст редактирования и несколько кнопок внутри панели инструментов; Я думаю, что это правильный способ обработки адресной строки внутри панели инструментов, поэтому я хотел, чтобы это было так. Он должен вести себя так же, как и любой другой мобильный браузер с скрытой панелью инструментов, вот чего я пытаюсь достичь. Есть какие-нибудь идеи?

Это XML-файл.

    <?xml version="1.0" encoding="utf-8"?>

android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_collapseMode="parallax"
app:layout_collapseParallaxMultiplier="0.7">


<android.support.design.widget.AppBarLayout 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="250dp">

    <android.support.design.widget.CollapsingToolbarLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:contentScrim="?attr/colorPrimary"
        app:layout_scrollFlags="scroll|exitUntilCollapsed">


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

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

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

<android.support.v4.widget.NestedScrollView
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_alignParentStart="true"
    android:layout_alignParentTop="true"
    android:layout_marginStart="7dp"
    android:layout_marginTop="-3dp"
    app:layout_behavior="@string/appbar_scrolling_view_behavior">

    <android.support.v4.widget.SwipeRefreshLayout
        android:id="@+id/swipe"
        android:layout_width="match_parent"
        android:layout_height="644dp"
        android:layout_alignParentStart="true"
        android:layout_alignParentTop="true"
        android:layout_marginStart="-1dp"
        android:layout_marginTop="62dp">

        <WebView
            android:id="@+id/webView"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" />


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


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


<android.support.v7.widget.AppCompatEditText
    android:id="@+id/input_search_url"
    android:layout_width="263dp"
    android:layout_height="40dp"
    android:layout_alignParentStart="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentTop="true"
    android:layout_marginStart="15dp"
    android:layout_marginLeft="15dp"
    android:layout_marginTop="8dp"
    android:layout_marginBottom="8dp"
    android:autofillHints=""
    android:background="#0000D1"
    android:ems="10"
    android:gravity="start|center"
    android:hint="Search or Enter Url"
    android:imeOptions="actionGo"
    android:importantForAutofill="auto"
    android:inputType="textUri"
    android:textColorHighlight="#39ff14"
    android:textSize="18sp"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintEnd_toEndOf="@+id/home_button"
    app:layout_constraintHorizontal_bias="0.0"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent"
    app:layout_constraintVertical_bias="0.0" />

<Button
    android:id="@+id/go"
    android:layout_width="30dp"
    android:layout_height="30dp"
    android:layout_alignParentTop="true"
    android:layout_alignParentEnd="true"
    android:layout_alignParentRight="true"
    android:layout_gravity="right"
    android:layout_marginTop="11dp"
    android:layout_marginEnd="37dp"
    android:layout_marginRight="-20dp"
    android:background="#8E24AA"
    android:text="Go!"
    android:textSize="8sp" />

<Button
    android:id="@+id/button"
    android:layout_width="30dp"
    android:layout_height="30dp"
    android:layout_alignParentStart="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentBottom="true"
    android:layout_gravity="right"
    android:layout_marginStart="30dp"
    android:layout_marginLeft="30dp"
    android:layout_marginBottom="115dp"
    android:background="#DD000000" />

<Button
    android:id="@+id/clear"
    android:layout_width="30dp"
    android:layout_height="30dp"
    android:layout_alignParentTop="true"
    android:layout_alignParentEnd="true"
    android:layout_alignParentRight="true"
    android:layout_marginTop="5dp"
    android:layout_marginEnd="90dp"
    android:layout_marginRight="90dp"
    android:background="@drawable/ic_clear_24dp"
    android:backgroundTint="#0000D1" />

<TextView
    android:id="@+id/textProgress"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:layout_alignParentEnd="true"
    android:layout_alignParentRight="true"
    android:layout_marginTop="-32dp"
    android:layout_marginEnd="405dp"
    android:layout_marginRight="405dp"
    android:linksClickable="true"
    android:longClickable="true"
    android:scrollHorizontally="true"
    android:textSize="24sp"
    android:visibility="invisible" />


<ProgressBar
    android:id="@+id/anotherProgressBar"
    style="?android:attr/progressBarStyleHorizontal"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentStart="true"
    android:layout_alignParentTop="true"
    android:layout_marginStart="0dp"
    android:layout_marginTop="53dp" />


<Button
    android:id="@+id/home_button"
    android:layout_width="63dp"
    android:layout_height="36dp"
    android:layout_alignParentTop="true"
    android:layout_alignParentEnd="true"
    android:layout_alignParentRight="true"
    android:layout_marginTop="691dp"
    android:layout_marginEnd="170dp"
    android:layout_marginRight="170dp"
    android:background="@drawable/ic_home_black_18dp"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintHorizontal_bias="1.0"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent" />

...