Sunday 11 December 2011

newswebview.java


package com.LIJSL;

import android.app.Activity;
import android.app.AlertDialog;
import android.app.ProgressDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.pm.ActivityInfo;
import android.os.Bundle;
import android.util.Log;
import android.view.Gravity;
import android.view.KeyEvent;
import android.view.View;
import android.view.ViewGroup;
import android.view.Window;
import android.view.WindowManager;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.Button;
import android.widget.FrameLayout;
import android.widget.TextView;

public class NewsWebView extends Activity {
String HeaderName, Description, Url, FileName, PublishDate,
top_header_text;
WebView mWebView;

ProgressDialog dialog = null;

// Back Button

private Button back;
private TextView top_text;

private boolean checkofNormal;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.newswebview);

top_text = (TextView) findViewById(R.id.top_text);

back = (Button) findViewById(R.id.back);

back.setOnClickListener(new View.OnClickListener() {

public void onClick(View v) {
// TODO Auto-generated method stub
finish();
}
});

checkofNormal = ScreenConfg.checkScreenSize_Normal(getWindowManager());

if (checkofNormal) {
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}

Bundle extras = getIntent().getExtras();
if (extras != null) {
HeaderName = extras.getString("headername");
Description = extras.getString("description");
Url = extras.getString("url");
FileName = extras.getString("filename");
PublishDate = extras.getString("publishdate");
top_header_text = extras.getString("top_header");
}

top_text.setText(top_header_text);

TextView heading = (TextView) findViewById(R.id.heading);
heading.setText(HeaderName);
TextView date = (TextView) findViewById(R.id.date);
date.setText(PublishDate);
mWebView = (WebView) findViewById(R.id.webview);
FrameLayout mContentView = (FrameLayout) getWindow().

getDecorView().findViewById(android.R.id.content);

final View zoom = this.mWebView.getZoomControls();

mContentView.addView(zoom, ZOOM_PARAMS);

zoom.setVisibility(View.GONE);

if (Internet_Check.checkInternetConnection(getApplicationContext())) {

setWebLink();
if (FileName.length() > 0
&& (!FileName.equalsIgnoreCase("anyType{}"))) {
mWebView.loadUrl(FileName);

} else if (Url.length() > 0 && (!Url.equalsIgnoreCase("anyType{}"))) {
mWebView.loadUrl(Url);

} else {

mWebView.loadData(HTMLExtraSpace.RemoveExtratext(Description),
"text/html", "UTF-8");


}

} else {
Alert_dialog();

}

// if (FileName.length() > 0 &&
// (!FileName.equalsIgnoreCase("anyType{}"))) {
// mWebView.loadUrl(FileName);
// Log.v("log_tag", FileName);
// } else if (Url.length() > 0 && (!Url.equalsIgnoreCase("anyType{}")))
// {
// mWebView.loadUrl(Url);
// Log.v("log_tag1", Url);
// } else {
// mWebView.loadData(Description, "text/html", "UTF-8");
//
// }
}

private void setWebLink() {
final Activity activity = this;
final WebView webView = (WebView) findViewById(R.id.webview);
webView.setWebViewClient(new WebViewClient() {
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}

public void onLoadResource(WebView view, String url) {
if (dialog == null) {
dialog = new ProgressDialog(activity);
dialog.setMessage("Loading.... Please Wait");
dialog.show();
}
}

public void onPageFinished(WebView view, String url) {
if (dialog.isShowing()) {
dialog.dismiss();

}
}
});
}

private static final FrameLayout.LayoutParams ZOOM_PARAMS =

new FrameLayout.LayoutParams(

ViewGroup.LayoutParams.FILL_PARENT,

ViewGroup.LayoutParams.WRAP_CONTENT,

Gravity.BOTTOM);

private void Alert_dialog() {
// Create the dialog box
AlertDialog.Builder alertbox = new AlertDialog.Builder(NewsWebView.this);
alertbox.setTitle("Connection Error");
// Set the message to display
alertbox.setMessage("Please Check is your internet connection");
// Set a positive/yes button and create a listener
alertbox.setPositiveButton("OK", new DialogInterface.OnClickListener() {
// Click listener
public void onClick(DialogInterface arg0, int arg1) {
NewsWebView.this.finish();
}
});
// display box
alertbox.show();

}

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) {
// do something on back.
onBackPressed();
return true;
}

return super.onKeyDown(keyCode, event);
}

@Override
public void onBackPressed() {
// do something on back.

finish();
}
}

No comments:

Post a Comment