Java 在单个webview中从一个页面导航到另一个页面
当用户单击图像时,我试图在已加载的webview中从一个页面转到另一个页面。html页面存储在资产文件夹的子文件夹中 下面是java代码Java 在单个webview中从一个页面导航到另一个页面,java,android,webview,Java,Android,Webview,当用户单击图像时,我试图在已加载的webview中从一个页面转到另一个页面。html页面存储在资产文件夹的子文件夹中 下面是java代码 package com.vm; import android.os.Bundle; import android.util.Log; import android.view.View; import android.webkit.WebView; import android.widget.ImageView; import android.widget.T
package com.vm;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.webkit.WebView;
import android.widget.ImageView;
import android.widget.TextView;
public class VmReadPreface extends VampireMusicActivity{
private WebView wv = null;
private int pageIndex;
private String pagePath;
private String[] pageList = {"file:///android_asset/preface/page_8.html",
"file:///android_asset/preface/page_9.html","file:///android_asset/preface/page_10.html",
"file:///android_asset/preface/page_11.html"};
private int SelectedRow;
public static final String DEBUG_TAG = "VmMusic";
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.preface);
WebView wv;
wv = (WebView) findViewById(R.id.web_holder);
System.out.println(pageList[0]);
System.out.println(pageList.length);
pagePath=pageList[pageIndex];
Log.i(DEBUG_TAG,"Page Path " + pagePath);
wv.loadUrl(pagePath);
final ImageView getNext_Page =(ImageView) findViewById(R.id.arrow_right);
getNext_Page.setOnClickListener(NextClick);
final ImageView getPrevious_Page =(ImageView) findViewById(R.id.arrow_left);
getPrevious_Page.setOnClickListener(PreviousClick);
}
View.OnClickListener PreviousClick = new View.OnClickListener(){
public void onClick(View v){
GoPrevious();
}
};
View.OnClickListener NextClick = new View.OnClickListener(){
public void onClick(View v){
GoNext();
}
};
private void loadWebView(String s){
Log.i(DEBUG_TAG,"String Is " + s);
String finalFile = s;
Log.i(DEBUG_TAG,"Final File Is " + finalFile);
wv.loadUrl(finalFile);
}
private void GoNext(){
int TotalRows = pageList.length;
if((SelectedRow + 1)<TotalRows)
{
SelectedRow=SelectedRow +1;
String s=pageList[SelectedRow];
loadWebView(s);
}
}
private void GoPrevious(){
if(SelectedRow>0)
{
SelectedRow = SelectedRow-1;
String s=pageList[SelectedRow];
loadWebView(s);
}
}
}
package com.vm;
导入android.os.Bundle;
导入android.util.Log;
导入android.view.view;
导入android.webkit.WebView;
导入android.widget.ImageView;
导入android.widget.TextView;
公共类VMReadPreference扩展了音乐活动{
私有网络视图wv=null;
私有int页索引;
私有字符串页面路径;
私有字符串[]页列表={”file:///android_asset/preface/page_8.html",
"file:///android_asset/preface/page_9.html","file:///android_asset/preface/page_10.html",
"file:///android_asset/preface/page_11.html"};
私有int SelectedRow;
公共静态最终字符串调试\u TAG=“VmMusic”;
/**在首次创建活动时调用*/
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(右布局,前言);
网络视图;
wv=(网络视图)findViewById(R.id.web\u持有者);
System.out.println(页面列表[0]);
System.out.println(pageList.length);
pagePath=pageList[pageIndex];
Log.i(调试标签,“页面路径”+页面路径);
wv.loadUrl(页面路径);
最终ImageView getNext_页面=(ImageView)findViewById(R.id.arrow_右侧);
getNext_Page.setOnClickListener(NextClick);
最终ImageView getPrevious_页面=(ImageView)findViewById(R.id.arrow_左);
getPrevious_Page.setOnClickListener(PreviousClick);
}
View.OnClickListener PreviousClick=新建视图。OnClickListener(){
公共void onClick(视图v){
GoPrevious();
}
};
View.OnClickListener NextClick=new View.OnClickListener(){
公共void onClick(视图v){
GoNext();
}
};
私有void loadWebView(字符串s){
Log.i(调试标签,“字符串为”+s);
字符串finalFile=s;
Log.i(DEBUG_标记,“最终文件是”+finalFile);
wv.loadUrl(最终文件);
}
私有void GoNext(){
int TotalRows=pageList.length;
如果((SelectedRow+1)0)
{
SelectedRow=SelectedRow-1;
字符串s=页面列表[SelectedRow];
loadWebView(s);
}
}
}
当活动启动时,第一个页面正确显示,但是当我按下“向右箭头”转到下一个页面时,日志显示它找到了正确的页面(即最终文件现在是“页面9”),但网络视图没有加载
dalvikm报告'threadid=1:线程退出,但出现未捕获异常
然后运行时给出一个致命异常和一个Null PointerException
我错过了什么?
谢谢删除
WebView wv来自onCreate
-语句的code>,因为这使它成为onCreate中的局部变量