それぞれWebビューを含む2つの異なるアクティビティを切り替えようとしていました。それらを切り替えるときに多くのメモリの問題が発生し、次のことを試しています。同じレイアウトにVISIBLEまたはGONEの2つのWebビューを設定しました。webviewAからボタンを押すと、webviewBにURLが読み込まれ、webviewB onPageFinished()の場合、AはGONEに設定され、BはVISIBLEに設定されます。BからAまで同じです。問題は、URLが最初にのみロードされることです。
2つのWebビューは、次のように同じレイアウトに設定されます。
<RelativeLayout
android:id="@+id/aLayout"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_below="@+id/barraSocial">
<WebView
android:id="@+id/webviewA"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:autoLink="web"
android:textColor="@android:color/black"
android:scrollbars="none"/>
</RelativeLayout>
<RelativeLayout
android:id="@+id/bLayout"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_below="@+id/barraSocial">
<WebView
android:id="@+id/webviewB"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:autoLink="web"
android:textColor="@android:color/black"
android:scrollbars="none"/>
</RelativeLayout>
onCreateアクティビティ、
final RelativeLayout LayoutA = (RelativeLayout)findViewById(R.id.aLayout);
final RelativeLayout LayoutB = (RelativeLayout)findViewById(R.id.bLayout);
webviewA = (WebView) findViewById(R.id.webviewA);
webviewB = (WebView) findViewById(R.id.webviewB);
webviewAボタンをクリックして、
webviewB.loadUrl(UrlVista);
次に、webviewBのonPageFinished()が起動され、
webviewB.setWebViewClient(new WebViewClient()
{
@Override
public void onPageFinished(WebView view, String url)
{
LayoutA.setVisibility(View.GONE);
LayoutB.setVisibility(View.VISIBLE);