Android学习笔记(十八)——使用意图筛选器和实现浏览网页(附源码)
来源:互联网 发布:cpi历年数据 编辑:程序博客网 时间:2024/05/22 13:27
使用意图筛选器
点击下载源码
1、创建一个Intents项目,给该项目添加一个新类,命名为MyBrowserActivity,在res/layout文件夹下新增一个browser.xml;
2、在AndroidManifest.xml文件中添加如下代码:
添加权限:
<uses-permission android:name="android.permission.CALL_PHONE" /> <uses-permission android:name="android.permission.INTERNET" /><activity android:name=".MyBrowserActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.VIEW" /> <action android:name="net.zenail.MyBrowser" /> <category android:name="android.intent.category.DEFAULT" /> <data android:scheme="http" /> </intent-filter> </activity>
action:动作;category:类别;data:指明获取的数据类型。3、在main.xml文件中添加三个Button:
<Button android:id="@+id/btn_webbrowser" android:layout_width="fill_parent" android:layout_height="wrap_content" android:onClick="onClickWebBrowser" android:text="Web Browser" /> <Button android:id="@+id/btn_makecalls" android:layout_width="fill_parent" android:layout_height="wrap_content" android:onClick="onClickMakeCalls" android:text="Make Calls" /> <Button android:id="@+id/btn_launchMyBrowser" android:layout_width="fill_parent" android:layout_height="wrap_content" android:onClick="onClickLaunchMyBrowser" android:text="Launch My Browser" />
4、在IntentsActivity.java文件中添加三个Button对应的三个点击方法:public void onClickWebBrowser(View v) {Intent intent = new Intent(android.content.Intent.ACTION_VIEW,Uri.parse("http://网址"));//此处输入百度网址,CSDN不让加链接...//使用createChooser()的好处://1、将显示的选择对话框的标题改掉,且没有了Use by default for this action选项//2、当没有活动与程序的Intent对象匹配时,应用程序不会崩溃//startActivity(intent.createChooser(intent, "Open URL using..."));startActivity(intent);}public void onClickMakeCalls(View v) {Intent intent = new Intent(android.content.Intent.ACTION_DIAL,Uri.parse("tel:+651234567"));startActivity(intent);}public void onClickLaunchMyBrowser(View v) {Intent intent = new Intent("net.zenail.MyBrowser");intent.setData(Uri.parse("http://网址"));//此处输入百度网址,CSDN不让加链接...startActivity(intent);}
5、在browser.xml中添加一个WebView:<WebView android:id="@+id/WebView01" android:layout_width="wrap_content" android:layout_height="wrap_content" />
6、在MyBrowserActivity.java文件中添加如下代码,实现浏览网页功能:public class MyBrowserActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {// TODO Auto-generated method stubsuper.onCreate(savedInstanceState);setContentView(R.layout.browser);Uri url = getIntent().getData();WebView webView = (WebView) findViewById(R.id.WebView01);webView.setWebViewClient(new Callback());webView.loadUrl(url.toString());}private class Callback extends WebViewClient {@Overridepublic boolean shouldOverrideUrlLoading(WebView view, String url) {// TODO Auto-generated method stubreturn false;}}}
7、运行一下,效果如下:
点击第三个按钮:
点击第一个按钮:
若想完善意图筛选器,则在IntentsActivity.java的onClickWebBrowser()方法中添加createChooser()方法:
startActivity(intent.createChooser(intent, "Open URL using..."));
添加后的效果如下:
这时即可选择你想要选择的应用程序即可~
附、使用createChooser()的好处:
1、将显示的选择对话框的标题改掉,且没有了Use by default for this action选项;
2、当没有活动与程序的Intent对象匹配时,应用程序不会崩溃。
8 0
- Android学习笔记(十八)——使用意图筛选器和实现浏览网页(附源码)
- Android编程权威指南(第二版)学习笔记(二十八)—— 第28章 网页浏览
- Android学习笔记(十)——使用意图链接活动
- Android学习笔记(十二)——使用意图传递数据的几种方式
- Android学习笔记(十七)——使用意图调用内置应用程序
- Android学习记录(7)—Intent中显示意图和隐式意图的用法
- Hello,Views(四)用Web View实现浏览网页(附源码)
- 仿酷狗音乐播放器开发日志十八——换肤功能的实现二:改变控件和窗体透明度(附挂件类源码)
- Android学习笔记之Intent(意图)
- Android学习笔记50:使用WebView控件浏览网页
- Android学习笔记50:使用WebView控件浏览网页
- Android 意图和意图过滤器(一)
- Android学习笔记(十八)——ExpandableListActivity与SimpleExpandableListAdapter
- Android学习笔记(十四)——在运行时添加碎片(附源码)
- Android学习笔记(十五)——碎片的生命周期(附源码)
- Android学习笔记(十六)——碎片之间进行交互(附源码)
- Android学习笔记——AIDL跨进程服务的应用详解(附源码)
- Android学习笔记(十一)——从意图返回结果
- UIWebView 禁止检测链接弹出UIActionSheet
- [HackerRank]Gem Stones
- 22、从头学Android之Android的数据存储--SQLite
- 关于解决Eclipse无法打开“Failed to load the JNI shared library”
- oracle解除被锁定的表的状态
- Android学习笔记(十八)——使用意图筛选器和实现浏览网页(附源码)
- POJ pie
- 在进行Web开发时,并非所有的库都适合你的项目,但你仍需要收藏一些Web UI设计相关的库或框架,以在你需要的时候,加快你的开发效率。
- replace the xfce panel with the lxpanel from lxde.
- mysql 笔记
- 优化移动端邮件营销效果办法
- 唯美英文语录
- 23、从头学Android之ContentProvider
- Third order system anlysis 自控 三阶系统的稳定性分析 matlab multisim仿真分析