Как сделать так, чтобы веб-просмотр работал с вложенным видом прокрутки? - PullRequest
0 голосов
/ 07 мая 2019

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

     <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout android:id="@+id/main_content"
    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="0dp"
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">

    <android.support.design.widget.CoordinatorLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">
        <android.support.v4.widget.NestedScrollView
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_gravity="fill_vertical"
            app:layout_behavior="@string/appbar_scrolling_view_behavior">


            <android.support.design.widget.AppBarLayout
                android:id="@+id/appbar"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">



                <android.support.v7.widget.Toolbar
                    android:id="@+id/toolbar"
                    android:layout_width="match_parent"
                    android:layout_height="?attr/actionBarSize"
                    android:layout_alignStart="@+id/main_content"
                    android:layout_alignTop="@+id/main_content"
                    android:background="#DD000000"
                    android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
                    app:layout_scrollFlags="scroll|enterAlways"
                    app:popupTheme="@style/ThemeOverlay.AppCompat.Light">




                    <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="0dp"
                        android:layout_marginLeft="0dp"
                        android:layout_marginBottom="0dp"
                        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" />
                </android.support.v7.widget.Toolbar>



                <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="640dp"
                        android:layout_alignParentStart="true"
                        android:layout_alignParentLeft="true"
                        android:layout_alignParentTop="true"
                        android:layout_marginStart="0dp"
                        android:layout_marginLeft="0dp"
                        android:layout_marginTop="51dp"
                        android:forceHasOverlappingRendering="true"
                        android:linksClickable="true"
                        android:longClickable="true"
                        android:scrollHorizontally="true" />

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

                <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" />

            </android.support.design.widget.AppBarLayout>
        </android.support.v4.widget.NestedScrollView>
    </android.support.design.widget.CoordinatorLayout>
</RelativeLayout>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...