Android--调用内置的浏览器

本程序实现的是点击ListView中的项目,程序会调用Android内置的浏览器打开网页。

实现的截图如下:

Android--调用内置的浏览器Android--调用内置的浏览器

实现这个程序也很简单,只需要调用Intent即可

下面给出本实例的实现代码:

1.定义的strings.xml文件

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
  <string name="hello">收藏夹</string> 
  <string name="app_name">EX08_04</string>  
  <string name="str_list_url1">Google</string>
  <string name="str_list_url2">Dubblogs</string>
  <string name="str_list_url3">Yahoo</string>
  <string name="str_list_url4">MSN</string>
  <string name="str_url1">http://www.google.com</string>
  <string name="str_url2">http://www.dubblogs.cc</string>
  <string name="str_url3">http://www.yahoo.com</string>
  <string name="str_url4">http://www.msn.com</string>
</resources> 

2.主程序文件

package irdc.EX08_04;

import android.app.Activity; 
import android.content.Intent; 
import android.net.Uri; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.TextView; 

public class EX08_04 extends Activity 
{
  /*声明一个ListView,TextView对象变量
   * 一个String array变量保存收藏夹
   * 与String变量来储存网址*/
  private ListView mListView1; 
  private TextView mTextView1; 
  private String[] myFavor;
  private String  myUrl;
   
  /** Called when the activity is first created. */ 
  @Override 
  public void onCreate(Bundle savedInstanceState) 
  { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
     
    /*透过findViewById建构子建立ListView与TextView对象*/ 
    mListView1 =(ListView) findViewById(R.id.myListView1); 
    mTextView1 = (TextView) findViewById(R.id.myTextView1); 
    mTextView1.setText(getResources().getString(R.string.hello));
    /*将收藏夹列表由string.xml中导入*/
    myFavor = new String[] { 
                               getResources().getString(R.string.str_list_url1), 
                               getResources().getString(R.string.str_list_url2), 
                               getResources().getString(R.string.str_list_url3), 
                               getResources().getString(R.string.str_list_url4) 
                             }; 
    /*自定义一ArrayAdapter准备传入ListView中,并将myFavor清单以参数传入*/ 
    ArrayAdapter<String> adapter = new  
    ArrayAdapter<String> 
    (EX08_04.this, android.R.layout.simple_list_item_1, myFavor); 
    
    /*将自定义完成的ArrayAdapter传入自定义的ListView中*/
    mListView1.setAdapter(adapter);
    /*将ListAdapter的可选(Focusable)选单选项打开*/
    mListView1.setItemsCanFocus(true);  
    /*设定ListView选单选项设为每次只能单一选项*/ 
    mListView1.setChoiceMode 
    (ListView.CHOICE_MODE_SINGLE); 
    /*设定ListView选项的nItemClickListener*/
    mListView1.setOnItemClickListener(new ListView.OnItemClickListener()
    { 

      @Override
      /*重写OnItemClick方法*/
      public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
          long arg3)
      {
        // TODO Auto-generated method stub
        /*若所选菜单的文字与myFavor字符串数组第一个文字相同*/ 
        if(arg0.getAdapter().getItem(arg2).toString()==myFavor[0].toString())
        {
          /*取得网址并调用goToUrl()方法*/
          myUrl=getResources().getString(R.string.str_url1);
          goToUrl(myUrl);
        }
        /*若所选菜单的文字与myFavor字符串数组第二个文字相同*/ 
        else if (arg0.getAdapter().getItem(arg2).toString()==myFavor[1].toString())
        {
          /*取得网址并呼叫goToUrl()方法*/
          myUrl=getResources().getString(R.string.str_url2);
          goToUrl(myUrl);
        } 
        /*若所选菜单的文字与myFavor字符串数组第三个文字相同*/ 
        else if (arg0.getAdapter().getItem(arg2).toString()==myFavor[2].toString())
        {
          /*取得网址并调用goToUrl()方法*/
          myUrl=getResources().getString(R.string.str_url3);
          goToUrl(myUrl);
        } 
        /*若所选菜单的文字与myFavor字符串数组第四个文字相同*/ 
        else if (arg0.getAdapter().getItem(arg2).toString()==myFavor[3].toString())
        {
          /*取得网址并调用goToUrl()方法*/
          myUrl=getResources().getString(R.string.str_url4);
          goToUrl(myUrl);
        } 
        /*以上皆非*/
        else
        {
          /*显示错误信息*/
          mTextView1.setText("Ooops!!出错了");
        } 
      }
    }); 
  } 
    /*开启网页的方法*/
    private void goToUrl(String url)
    {
      Uri uri = Uri.parse(url); 
      Intent intent = new Intent(Intent.ACTION_VIEW, uri); 
      startActivity(intent); 
    }
} 

3.注意,由于需要连接互联网,所以需要给程序加入权限

<uses-permission android:name="android.permission.INTERNET"></uses-permission>


你可能感兴趣的:(android)