package android.source.tuangou;
import android.content.DialogInterface;
import android.os.Bundle;
import android.source.tuangou.framework.util.StringUtil;
import android.source.tuangou.framework.web.WebActivity;
import android.view.KeyEvent;
import android.view.View;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.widget.Button;
import android.widget.LinearLayout;
import android.widget.TextView;
/*
* HeaderWebActivity--头部headerWebActivity类
* */
public class HeaderWebActivity extends WebActivity{
Button backButton;
String id;
TextView titleText;
public HeaderWebActivity(){
}
public String getId()
{
return id;
}
//获得ActivityContainer对象
public ActivityContainer getStack(){
return (ActivityContainer)getParent();
}
//初始化布局函数--顶部和添加webview对象
protected void initLayout(){
setContentView(R.layout.header_web);
LinearLayout linearlayout = (LinearLayout)findViewById(R.id.root);
backButton = (Button)findViewById(R.id.btn_main_title_back);
//获取数据
Bundle bundle = getIntent().getExtras();
//判断是否是第一个,是的话就不要显示back按钮
if (bundle != null && bundle.getBoolean("isFirst")){
backButton.setVisibility(View.GONE);
}
//设置返回按钮的单击事件监听器
backButton.setOnClickListener(new OnClickListener1());
//获取显示标题的控件
titleText = (TextView)findViewById(R.id.txt_main_title);
//获取webView对象
WebView webview = getWebView();
android.widget.LinearLayout.LayoutParams layoutparams = new android.widget.
LinearLayout.LayoutParams(-1, -1, 1F);
//设置webview的布局参数
webview.setLayoutParams(layoutparams);
//将控件设置到正好显示
webview.setInitialScale(100);
//设置控件不显滚动条
webview.setVerticalScrollBarEnabled(false);
//设置控件长按事件监听器
webview.setOnLongClickListener(new OnLongClickListener2());
//webview控件的设置类对象
WebSettings websettings = webview.getSettings();
//启用JavaScript
websettings.setJavaScriptEnabled(true);
websettings.setJavaScriptCanOpenWindowsAutomatically(true);
android.webkit.WebSettings.LayoutAlgorithm layoutalgorithm = android.webkit.WebSettings.LayoutAlgorithm.NORMAL;
websettings.setLayoutAlgorithm(layoutalgorithm);
//线性布局中添加webview对象
linearlayout.addView(webview);
}
//按键的事件处理函数
public boolean onKeyDown(int keyCode, KeyEvent keyevent){
boolean flag;
//getRepeatCount--判断是否有重复,按下返回键且没有重复
if (keyCode == keyevent.KEYCODE_BACK &&
keyevent.getRepeatCount() == 0){
//判断是否为最后一个,是的话提示退出对话框
if (!getStack().backToStackBottom()){
android.app.Activity activity = getParent();
android.app.AlertDialog.Builder builder = (new android.app.AlertDialog.
Builder(activity)).setTitle("退出程序").setMessage("是否退出团购大全?");
OnClickListener4 mOnClickListener4 = new OnClickListener4();
android.app.AlertDialog.Builder builder1 = builder.setPositiveButton("确定", mOnClickListener4);
OnClickListener3 mOnClickListener3 = new OnClickListener3();
builder1.setNegativeButton("取消", mOnClickListener3).create().show();
}
flag = true;
} else{
flag = super.onKeyDown(keyCode, keyevent);
}
return flag;
}
public void setId(String s){
id = s;
}
public void setUITitle(String s){
titleText.setText(s);
}
public void triggerJavascript(int i, String s){
if (StringUtil.isEmpty(s).booleanValue())
s = "null";
switch(i){
case 1:
String as[] = new String[1];
as[0] = s;
callJSFunc("_on_page_back", as);
break;
case 2:
String as1[] = new String[1];
as1[0] = s;
callJSFunc("_on_page_resume", as1);
break;
}
return;
}
private class OnClickListener1
implements android.view.View.OnClickListener{
final HeaderWebActivity this$0;
public void onClick(View view){
getStack().back(null);
}
OnClickListener1(){
super();
this$0 = HeaderWebActivity.this;
}
}
private class OnLongClickListener2
implements android.view.View.OnLongClickListener{
final HeaderWebActivity this$0;
public boolean onLongClick(View view){
HeaderWebActivity headerwebactivity = HeaderWebActivity.this;
String as[] = new String[0];
headerwebactivity.callJSFunc("_on_long_click", as);
return true;
}
OnLongClickListener2(){
super();
this$0 = HeaderWebActivity.this;
}
}
private class OnClickListener4
implements android.content.DialogInterface.OnClickListener{
final HeaderWebActivity this$0;
public void onClick(DialogInterface dialoginterface, int i){
finish();
}
OnClickListener4(){
super();
this$0 = HeaderWebActivity.this;
}
}
private class OnClickListener3
implements android.content.DialogInterface.OnClickListener{
final HeaderWebActivity this$0;
public void onClick(DialogInterface dialoginterface, int i){
}
OnClickListener3(){
super();
this$0 = HeaderWebActivity.this;
}
}
}