public class Majiang extendsCocos2dxActivity{
WebView m_webView;
ImageView m_imageView;static Majiang majiang = null;
FrameLayout m_webLayout;
LinearLayout topLayout;
Button backButton;protected voidonCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);//全局变量保存this
majiang=this;//初始化一个空的布局
m_webLayout = new FrameLayout(this);
addContentView(m_webLayout,newLayoutParams(LayoutParams.FILL_PARENT,LayoutParams.FILL_PARENT));
}//此函数提供给jni调用,返回自身类的对象
public static Majiang getInstance() {//返回实例
returnmajiang;
}public voidopenAndroidView() {this.runOnUiThread(new Runnable() {//在主线程里添加别的控件
public voidrun() {//初始化webView
m_webView = newWebView(majiang);//设置webView能够执行javascript脚本
m_webView.getSettings().setJavaScriptEnabled(true);//设置可以支持缩放
m_webView.getSettings().setSupportZoom(true);//设置出现缩放工具
m_webView.getSettings().setBuiltInZoomControls(true);//载入URL
m_webView.loadUrl("http://www.baidu.com");//使页面获得焦点
m_webView.requestFocus();//如果页面中链接,如果希望点击链接继续在当前browser中响应
m_webView.setWebViewClient(newWebViewClient(){public booleanshouldOverrideUrlLoading(WebView view, String url) {if(url.indexOf("tel:")<0){
view.loadUrl(url);
}return true;
}
});
/*背景图*/m_imageView= newImageView(majiang);
m_imageView.setImageResource(R.drawable.lobbybg);
m_imageView.setScaleType(ImageView.ScaleType.FIT_XY);/*初始化线性布局 里面加按钮和webView*/topLayout= newLinearLayout(majiang);
topLayout.setOrientation(LinearLayout.VERTICAL);/*初始化返回按钮*/backButton= newButton(majiang);
backButton.setBackgroundResource(R.drawable.backbutton);
backButton.setLayoutParams(newLinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT));
backButton.setText("关 闭");
backButton.setTextColor(Color.argb(255, 255, 218, 154));
backButton.setTextSize(14);
backButton.setOnClickListener(newOnClickListener() {public voidonClick(View v) {
removeWebView();
}
});//把image加到主布局里
m_webLayout.addView(m_imageView);//把webView加入到线性布局
topLayout.addView(backButton);
topLayout.addView(m_webView);//再把线性布局加入到主布局
m_webLayout.addView(topLayout);
}
});
}//移除webView 把刚才加的所有控件都删掉
public voidremoveWebView() {
m_webLayout.removeView(m_imageView);
m_imageView.destroyDrawingCache();
m_webLayout.removeView(topLayout);
topLayout.destroyDrawingCache();
topLayout.removeView(m_webView);
m_webView.destroy();
topLayout.removeView(backButton);
backButton.destroyDrawingCache();
}public boolean onKeyDown(int keyCoder,KeyEvent event)//重载函数,android手机实体返回键回调函数
{if(m_webView.canGoBack() && keyCoder == KeyEvent.KEYCODE_BACK){//如果网页能回退则后退,如果不能后退移除WebView
m_webView.goBack();
}else{
removeWebView();
}return false;
}
}