android 筛选器,Android学习笔记(十八)——使用意图筛选器和实现浏览网页(附源码)...

1、创建一个Intents项目,给该项目添加一个新类,命名为MyBrowserActivity,在res/layout文件夹下新增一个browser.xml;

2、在AndroidManifest.xml文件中添加如下代码:

添加权限:

android:name=".MyBrowserActivity"

android:label="@string/app_name" >

action:动作;category:类别;data:指明获取的数据类型。

3、在main.xml文件中添加三个Button:

android:id="@+id/btn_webbrowser"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:onClick="onClickWebBrowser"

android:text="Web Browser" />

android:id="@+id/btn_makecalls"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:onClick="onClickMakeCalls"

android:text="Make Calls" />

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:

android:id="@+id/WebView01"

android:layout_width="wrap_content"

android:layout_height="wrap_content" />

6、在MyBrowserActivity.java文件中添加如下代码,实现浏览网页功能:

public class MyBrowserActivity extends Activity {

@Override

protected void onCreate(Bundle savedInstanceState) {

// TODO Auto-generated method stub

super.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 {

@Override

public boolean shouldOverrideUrlLoading(WebView view, String url) {

// TODO Auto-generated method stub

return false;

}

}

}

7、运行一下,效果如下:

8f263a2e1dcd52d51a0b51cc236d454f.png

点击第三个按钮:

67dd3710aa9199736fab789018a7562c.png

点击第一个按钮:

f7043f1fc2085aa63c251593b4dbf233.png

若想完善意图筛选器,则在IntentsActivity.java的onClickWebBrowser()方法中添加createChooser()方法:

startActivity(intent.createChooser(intent, "Open URL using..."));

添加后的效果如下:

7609542031b7e14b8c8252b77a2f88a0.png

这时即可选择你想要选择的应用程序即可~

附、使用createChooser()的好处:

1、将显示的选择对话框的标题改掉,且没有了Use by default for this action选项;

2、当没有活动与程序的Intent对象匹配时,应用程序不会崩溃。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值