android的简易浏览器的设计实现

Android的简易浏览器的设计和实现是十分的简单的,具体的总结如下:

首先Android浏览器的界面十分的简洁,因为只要实现可以浏览网页的功能即可,因此在这里只设计和实现简单的核心功能即可


其界面的设置如上图,具体解释如下:1.“前进”按钮.2“后退”按钮.3.输入地址的地址栏(EditText).4.进入相应地址的按钮.5.是显示网页的控件WebView。

具体的界面的设置在布局文件中完成即可,其具体的代码如下:

<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical"
    xmlns:android="http://schemas.android.com/apk/res/android">
    <LinearLayout 
        android:orientation="horizontal"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        >
        <Button
            android:id="@+id/forward"
            android:layout_height="wrap_content"
            android:layout_width="wrap_content"
            android:text="@stringard">"
        </Button>
        <Button
            android:id="@+id/back"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/goback">"
        </Button>
        <EditText
            android:id="@+id/edit"
            android:layout_width="0dip"
            android:layout_height="wrap_content"
            android:lines="1"
            android:layout_weight="1"
            android:text="www.baidu.com"
            >
        </EditText>
        <Button
            android:id="@+id/go"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/go"
            ></Button>
    </LinearLayout>
    <WebView 
        android:layout_width="fill_parent"
        android:layout_height="0dip"
        android:layout_weight="1.0"
        android:focusable="false"
        android:id="@+id/webview"
        />
</LinearLayout>

进行布局文件之后下一步的工作是在AndroidManifest.xml中进行配置,只有这样才可以访问网路,要不然程序会一直出现无法访问网络的错误,这一点是十分重要的,具体的配置代码为:<uses-permission android:name="android.permission.INTERNET"/>

这一步之后进入MainActivity.java里面进行代码的编写,具体的代码如下:

public class MainActivity extends ActionBarActivity {
	Button button_forward;
	Button button_back;
	EditText edit;
	Button go;
	WebView webview;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		
		//获得几个空间的操作id
		button_forward=(Button)findViewById(R.id.forward);
		button_back=(Button)findViewById(R.id.back);
		edit=(EditText)findViewById(R.id.edit);
		go=(Button)findViewById(R.id.go);
		webview=(WebView)findViewById(R.id.webview);
		//为webview控件设置属性
		webview.getSettings().setJavaScriptEnabled(true);
		webview.setWebChromeClient(new WebChromeClient());
		webview.setWebViewClient(new WebViewClient());
		//获得几个控件的id之后,接下来为控件添加事件监听器
		/**
		 * 为前进按钮添加事件监听器
		 */
		button_forward.setOnClickListener(new OnClickListener() {
			
			@Override
			public void onClick(View arg0) {
				// TODO Auto-generated method stub
				webview.goForward();
			}
		});
		button_back.setOnClickListener(new OnClickListener() {
			
			@Override
			public void onClick(View arg0) {
				// TODO Auto-generated method stub
				webview.goBack();
			}
		});
		/*edit.setOnKeyListener(new OnKeyListener() {
			
			@Override
			public boolean onKey(View arg0, int arg1, KeyEvent arg2) {
				// TODO Auto-generated method stub
				if(arg1==KeyEvent.KEYCODE_ENTER){//如果是回车的话就执行这个操作
					if
				}
				return false;
			}
		});*/
		go.setOnClickListener(new OnClickListener() {
			
			@Override
			public void onClick(View arg0) {
				// TODO Auto-generated method stub
				//go事件是进行页面的跳转
				if(!"".equals(edit.getText().toString())){
					OpenBrowser();
				}else{
				}
				
			}
		});
	}
	private void OpenBrowser(){
		//加载网页
		webview.loadUrl("http://"+edit.getText().toString());
		Toast.makeText(this, "正在加载:"+edit.getText().toString(), Toast.LENGTH_SHORT).show();
	}
	
}
经过这样的编辑之后,就可以完成基本的操作,运行代码即可

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值