Я пытаюсь разрешить вызов WebView в своем приложении. В этом вызове они должны иметь возможность просматривать другую страницу. Я также пытаюсь сохранить совместимый AppBar для приложения.Android - нажатие на WebView приводит к исчезновению AppBar.
Я .xml в определяется как:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:app="http://schemas.android.com/apk/res-auto"
tools:context="com.realpayment.app.activities.CalledAction"
android:background="@color/c_black">
<android.support.v7.widget.Toolbar
android:id="@+id/my_toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:elevation="4dp"
android:theme="@style/JupiterTheme"
app:popupTheme="@style/ThemeOverlay.AppCompat"/>
<WebView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/calledAction"
android:background="@color/c_black"
android:layout_margin="15px"
android:layout_below="@+id/my_toolbar"
android:textColor="@color/c_white"
/>
В моем коде я звоню (я играю с вариантами и нашел их в другом SO пост), но я, начиная с только первая и последняя строка и увидеть один и тот же вопрос (я знаю, в этом случае вы не можете нажать, но я случайно был редирект в моей ссылке):
WebView browser = (WebView) findViewById(R.id.calledAction);
browser.setFocusable(true);
browser.setFocusableInTouchMode(true);
browser.getSettings().setJavaScriptEnabled(true);
browser.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);
browser.getSettings().setDomStorageEnabled(true);
browser.getSettings().setDatabaseEnabled(true);
browser.getSettings().setAppCacheEnabled(true);
browser.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);
browser.loadUrl(sCallToActionLink);
Это загружает ссылку отлично и мои ба действий r отображается. Кнопка «Вверх» возвращает меня к родительской активности, а кнопка «Назад» возвращает меня к последнему названному действию. Моя проблема в том, что если я нажму ссылку, откроется новый экран с собственным AppBar, который не имеет кнопки вверх. Это выглядит совершенно иначе. Кнопка «Назад» по-прежнему работает, но мой план состоит в том, чтобы предоставить кнопку «вверх», чтобы пользователь мог перемещаться по двум экранам, которые она хотела бы, и затем может нажать кнопку «вверх», чтобы вернуться в разумное место в моем приложении. В этом случае единственное обращение, похоже, неоднократно нажимает кнопку «Назад».
Заранее спасибо
Таким образом, вы хотите, чтобы ссылка будет открыта в вашем собственном 'WebView'? – Pztar
Да, да. Есть ли причина не делать этого? Я просто понял, что WebView уходит с ума от намерения браузера и больше не работает в моем приложении. –