Android WebView 失去了 AppBar
Android WebView loses AppBar
我正在我的应用程序中加载 WebView。我启用了 AppBar,它在等待 WebView 加载时显示。页面加载后,看起来它会打开一个新的 activity 并用它自己的 AppBar 替换我的 AppBar。在这种情况下,我会很高兴有一个正确的向上按钮返回到父 activity。 (我希望后退按钮和向上按钮一样工作)就目前而言,后退按钮将我带回此处的 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.ReadMessage"
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:layout_margin="15px"
android:layout_below="@+id/my_toolbar"
android:textColor="@color/c_white"
/>
我正在使用
在 onCreate 中初始化我的应用栏
Toolbar myToolbar = (Toolbar) findViewById(R.id.my_toolbar);
setSupportActionBar(myToolbar);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
我正在加载网页
WebView browser = (WebView) findViewById(R.id.calledAction);
browser.loadUrl(sCallToActionLink);
感谢您的帮助!
尝试使用线性布局
使用布局权重属性使 webview 覆盖尽可能多的 space 由工具栏留下,并且还覆盖 shouldOverrideUrlLoading 方法以确保页面导航应该在您的 WebView 中
<LinearLayout 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"
orientation="vertical"
xmlns:app="http://schemas.android.com/apk/res-auto"
tools:context="com.realpayment.app.activities.ReadMessage"
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="0dp"
android:layout_weight="1"
android:id="@+id/calledAction"
android:textColor="@color/c_white"
/>
我的问题是因为我正在浏览 "http://" 并且它正在重定向到 "https://",这导致了问题。修复 link 和视图的行为应该有。
我正在我的应用程序中加载 WebView。我启用了 AppBar,它在等待 WebView 加载时显示。页面加载后,看起来它会打开一个新的 activity 并用它自己的 AppBar 替换我的 AppBar。在这种情况下,我会很高兴有一个正确的向上按钮返回到父 activity。 (我希望后退按钮和向上按钮一样工作)就目前而言,后退按钮将我带回此处的 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.ReadMessage"
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:layout_margin="15px"
android:layout_below="@+id/my_toolbar"
android:textColor="@color/c_white"
/>
我正在使用
在 onCreate 中初始化我的应用栏Toolbar myToolbar = (Toolbar) findViewById(R.id.my_toolbar);
setSupportActionBar(myToolbar);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
我正在加载网页
WebView browser = (WebView) findViewById(R.id.calledAction);
browser.loadUrl(sCallToActionLink);
感谢您的帮助!
尝试使用线性布局
使用布局权重属性使 webview 覆盖尽可能多的 space 由工具栏留下,并且还覆盖 shouldOverrideUrlLoading 方法以确保页面导航应该在您的 WebView 中
<LinearLayout 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"
orientation="vertical"
xmlns:app="http://schemas.android.com/apk/res-auto"
tools:context="com.realpayment.app.activities.ReadMessage"
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="0dp"
android:layout_weight="1"
android:id="@+id/calledAction"
android:textColor="@color/c_white"
/>
我的问题是因为我正在浏览 "http://" 并且它正在重定向到 "https://",这导致了问题。修复 link 和视图的行为应该有。