您好我正在尝试使用onclick获取网址的值,但它对我不起作用。我使用以下代码。
import android.net.Uri;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.View;
import android.webkit.WebView;
public class MainActivity extends Activity {
String valueOfURL = null;
WebView webView;
Intent browserIntent;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
browserIntent = new Intent("android.intent.action.VIEW", Uri.parse("http://www.example.com"));
startActivity(browserIntent);
}
public String handleLinkClicked(String value) {
if (value.startsWith("http"))
valueOfURL = value;
return valueOfURL;
}
public View.OnClickListener myhandler = new View.OnClickListener() {
public void onClick(View view) {
handleLinkClicked(valueOfURL);
webView.loadUrl("http://docs.google.com/gview?embedded=true&url=valueOfURL");
}};
}
第一页将加载正常,但当我点击该页面上的PDF时,它不会加载。基本上我要做的是获取URL的值并将其传递给变量,然后通过谷歌文档读取该变量。它是一个pdf文件,其URL如下所示 http://wwww.example.com/c/document_library/get_file?
任何人都可以看到我出错的地方,也许可以指出我正确的方向。
感谢你
答案 0 :(得分:1)
您未将onClickListener()
myhandler
设置为任何View
。您的代码(browserIntent
)会启动一个隐式intent
,它会自动启动一个Web浏览器(未链接到您的应用程序的新Activity
)来处理您的URL。如果您需要从应用程序控制浏览,则应在布局中实现WebView
并将onClickListener
设置为它而不是使用隐式意图。检查此link有关Android处理隐式意图的方式