WebView网页版的手机app


//Main.xml布局文件

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="fill_parent"
    tools:context=".MainActivity" >
    <RelativeLayout
        android:id="@+id/main_top_lay"
        android:layout_width="fill_parent"
        android:layout_height="@dimen/title_height"
        android:layout_alignParentTop="true" >//使当前控件的上端和父控件的上端对齐。这里属性值只能为true或false,默认false。 
        <include layout="@layout/titlebar_homepage" />//<include>标签使用,在一个布局文件里包含另一个布局文件,当遇到一个复杂的布局,可以用此方法。
    </RelativeLayout>
<ProgressBar 
        style="@style/custom_horizontal_progressBar"
        android:id="@+id/progress"
        android:layout_width="fill_parent"
   android:layout_height="8dp"
   android:layout_below="@+id/main_top_lay"//该代码表示ProgressBar 控件在<RelativeLayout>的下方
        />
    <WebView 
   android:fitsSystemWindows="true"
   android:layout_below="@+id/progress"
   android:layout_above="@+id/bottom_layout"//该代码表示WebView 控件在bottom_layout的上方
   android:layout_width="fill_parent"
   android:layout_height="fill_parent"
   android:id="@+id/site_view"
   />
    <LinearLayout
        android:id="@+id/bottom_layout"
        android:layout_width="fill_parent"
        android:layout_height="50dp"
        android:background="@color/white"
        android:orientation="horizontal" 
        android:layout_alignParentBottom="true">//该代码表示LinearLayout控件相对于父控件的底端端对齐。这里属性值只能为true或false,默认false。
        <LinearLayout
            android:id="@+id/linear1"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:layout_weight="1"
            android:gravity="center"
            android:orientation="vertical" >
            <ImageView
                android:id="@+id/imageView1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:scaleType="fitXY"
                android:src="@drawable/smart_medical_default" />
        </LinearLayout>
        <LinearLayout
            android:id="@+id/linear2"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:layout_weight="1"
            android:gravity="center"
            android:orientation="horizontal" >
            <ImageView
                android:id="@+id/imageView2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:gravity="center"
                android:scaleType="fitXY"
                android:src="@drawable/my_health_default" />
        </LinearLayout>
        <LinearLayout
            android:id="@+id/linear3"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:layout_weight="1"
            android:gravity="center"
            android:orientation="horizontal" >
            <ImageView
                android:id="@+id/imageView3"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:gravity="center"
                android:scaleType="fitXY"
                android:src="@drawable/person_center_default" />
        </LinearLayout>
    </LinearLayout>
</RelativeLayout>


//mian.xml相对应的 Mainactivity 的Java代码


package com.hpsvse.activity;

import com.hpsvse.XysYHost.R;
import android.os.Bundle;
import android.app.Activity;
import android.view.KeyEvent;
import android.view.Menu;
import android.webkit.WebChromeClient;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.webkit.WebSettings.PluginState;
import android.widget.ProgressBar;
/**
 * @author zhangsong
 */


public class MainActivity extends Activity {
private WebView siteView;
private ProgressBar processbar;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main); 
initView();


WebSettings webSettings = siteView.getSettings();
//允许使用javascript  及插件允许
webSettings.setJavaScriptEnabled(true);  
webSettings.setPluginState(PluginState.ON);
webSettings.setJavaScriptCanOpenWindowsAutomatically(true);
webSettings.setUseWideViewPort(true);
webSettings.setLoadWithOverviewMode(true);

siteView.loadUrl(getString(R.string.free_diagnosis_address));//Webview加载网页端的Url<string name="free_diagnosis_address">http://120.26.39.104:100/</string>
//得到webview设置  
siteView.setWebViewClient(new WebViewClient(){
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
});
 //得到webview设置  
   
    siteView.setWebChromeClient(new WebChromeClient(){
    @Override
    public void onProgressChanged(WebView view, int newProgress) {
    processbar.setProgress(newProgress);
    if(newProgress == 100)
    {
    //隐藏进度条
    processbar.setVisibility(view.GONE);
    }
    }
    });
}

//初始化试图界面
private void initView() {
// TODO Auto-generated method stub
siteView = (WebView) findViewById(R.id.site_view);
processbar = (ProgressBar) findViewById(R.id.progress);
}

@Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        //处理WebView跳转返回
        if ((keyCode == KeyEvent.KEYCODE_BACK) && siteView.canGoBack()) {
        siteView.goBack();
            return true;
        }
        return super.onKeyDown(keyCode, event);
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值