package com.atguigu.beijingnews.activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.ImageButton;
import android.widget.ProgressBar;
import android.widget.TextView;
import com.atguigu.beijingnews.R;
import butterknife.ButterKnife;
import butterknife.InjectView;
import butterknife.OnClick;
import cn.sharesdk.onekeyshare.OnekeyShare;
public class NewsDetailActivity extends AppCompatActivity {
@InjectView(R.id.tv_title)
TextView tvTitle;
@InjectView(R.id.ib_menu)
ImageButton ibMenu;
@InjectView(R.id.ib_back)
ImageButton ibBack;
@InjectView(R.id.ib_textsize)
ImageButton ibTextsize;
@InjectView(R.id.ib_share)
ImageButton ibShare;
@InjectView(R.id.webview)
WebView webview;
@InjectView(R.id.progressbar)
ProgressBar progressbar;
private String url;
/**
* 缓存
*/
private int tempSize = 2;
/**
* 真实文字大小
*/
private int realSize = tempSize;
private WebSettings webSettings;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_news_detail);
ButterKnife.inject(this);
url = getIntent().getStringExtra("url");
//Toast.makeText(this, "url==" + url, Toast.LENGTH_SHORT).show();
tvTitle.setVisibility(View.GONE);
ibBack.setVisibility(View.VISIBLE);
ibTextsize.setVisibility(View.VISIBLE);
ibShare.setVisibility(View.VISIBLE);
//WebView的使用
webview.loadUrl(url);
// webview.loadUrl("http://android.atguigu.com/");
webSettings = webview.getSettings();
//支持javaScript脚步语言
webSettings.setJavaScriptEnabled(true);
// webSettings.setTextSize(WebSettings.TextSize.LARGEST);
//添加缩放按钮-页面要支持
webSettings.setBuiltInZoomControls(true);
//支持双击变大变小-页面支持
webSettings.setUseWideViewPort(true);
//设置监听
webview.setWebViewClient(new WebViewClient() {
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
progressbar.setVisibility(View.GONE);
}
});
}
@OnClick({R.id.ib_back, R.id.ib_textsize, R.id.ib_share})
public void onClick(View view) {
switch (view.getId()) {
case R.id.ib_back:
finish();
break;
case R.id.ib_textsize:
// Toast.makeText(this, "设置文字大小", Toast.LENGTH_SHORT).show();
showChangeTextSizeDialog();
break;
case R.id.ib_share:
//Toast.makeText(this, "分享", Toast.LENGTH_SHORT).show();
showShare();
break;
}
}
/**
* 改变文字大小
*/
private void showChangeTextSizeDialog() {
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("设置文字大小");
String[] items = {"超大字体", "大字体", "正常字体", "小字体", "超小字体"};
builder.setSingleChoiceItems(items, realSize, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
tempSize = which;
}
});
builder.setNegativeButton("取消", null);
builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
realSize = tempSize;
changeTextSize(realSize);
}
});
builder.show();
}
private void changeTextSize(int realSize) {
switch (realSize) {
case 0://超大字体
// webSettings.setTextSize(WebSettings.TextSize.LARGEST);
webSettings.setTextZoom(200);
break;
case 1://大字体
webSettings.setTextZoom(150);
break;
case 2://正常字体
webSettings.setTextZoom(100);
break;
case 3://小字体
webSettings.setTextZoom(75);
break;
case 4://超小字体
webSettings.setTextZoom(50);
break;
}
}
private void showShare() {
OnekeyShare oks = new OnekeyShare();
//关闭sso授权
oks.disableSSOWhenAuthorize();
// title标题,印象笔记、邮箱、信息、微信、人人网、QQ和QQ空间使用
oks.setTitle("来自尚硅谷it教育");
// titleUrl是标题的网络链接,仅在Linked-in,QQ和QQ空间使用
oks.setTitleUrl("http://atguigu.com/");
// text是分享文本,所有平台都需要这个字段
oks.setText("大王派我来巡山");
//分享网络图片,新浪微博分享网络图片需要通过审核后申请高级写入接口,否则请注释掉测试新浪微博
oks.setImageUrl("http://f1.sharesdk.cn/imgs/2014/02/26/owWpLZo_638x960.jpg");
// imagePath是图片的本地路径,Linked-In以外的平台都支持此参数
//oks.setImagePath("/sdcard/test.jpg");//确保SDcard下面存在此张图片
// url仅在微信(包括好友和朋友圈)中使用
oks.setUrl("http://atguigu.com/");
// comment是我对这条分享的评论,仅在人人网和QQ空间使用
oks.setComment("尚硅谷it教育好");
// site是分享此内容的网站名称,仅在QQ空间使用
oks.setSite("尚硅谷it教育");
// siteUrl是分享此内容的网站地址,仅在QQ空间使用
oks.setSiteUrl("http://atguigu.com/");
// 启动分享GUI
oks.show(this);
}
}