HiveBrain v1.2.0
Get Started
← Back to all entries
patternjavaMinor

Simplifying WebView

Submitted by: @import:stackexchange-codereview··
0
Viewed 0 times
simplifyingwebviewstackoverflow

Problem

I started to code on Android, but I think my code is very heavy and may slow down the performance of my app.

For example, when I run my app and I try to drag the page in one of my webviews, it's pretty laggy.

This does not include imports:

```
package com.anthoapps.googlewebviewsample;

public class MainActivity extends Activity {
/** Called when the activity is first created. */
//AFFICHAGE DU LOGO PENDANT 3SEC
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.fragment_main);

final ImageView imgv1 = (ImageView) findViewById(R.id.logo);
imgv1.setVisibility(View.VISIBLE);
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
imgv1.setVisibility(View.GONE);
}
},2 * 1000); // Pour 3 secondes
final WebView webv1 = (WebView) findViewById(R.id.webView);
webv1.setVisibility(View.INVISIBLE);

// Nous cherchons le bouton dans notre interface
((ImageButton)findViewById(R.id.boutonfacebook))
// Nous paramétrons un écouteur sur l’événement ‘click’ de ce bouton
.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// Nous affichons un message à l’utilisateur
// Instanciation du WebView...

webv1.setVisibility(View.VISIBLE);
WebView wvSite = (WebView)findViewById(R.id.webView);
WebView myWebView = (WebView) findViewById(R.id.webView);
myWebView.setWebViewClient(new WebViewClient(){
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
view.loadData("Impossible de charger la page, veuillez vérifier votre connexion internet.", "text/html", "UTF-8");
}

});

//..

Solution

There is a lot of issue with your Formatting here, almost nothing is indented properly.

And please if you want CodeReview to review your code, please translate at least the Comments to English.

Here is what the code should look like when it is properly indented

```
package com.anthoapps.googlewebviewsample;

public class MainActivity extends Activity {
/** Called when the activity is first created. */
//AFFICHAGE DU LOGO PENDANT 3SEC
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.fragment_main);

final ImageView imgv1 = (ImageView) findViewById(R.id.logo);
imgv1.setVisibility(View.VISIBLE);
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
imgv1.setVisibility(View.GONE);
}
},2 * 1000); // Pour 3 secondes
final WebView webv1 = (WebView) findViewById(R.id.webView);
webv1.setVisibility(View.INVISIBLE);

// Nous cherchons le bouton dans notre interface
((ImageButton)findViewById(R.id.boutonfacebook))
// Nous paramétrons un écouteur sur l’événement ‘click’ de ce bouton
.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// Nous affichons un message à l’utilisateur
// Instanciation du WebView...

webv1.setVisibility(View.VISIBLE);
WebView wvSite = (WebView)findViewById(R.id.webView);
WebView myWebView = (WebView) findViewById(R.id.webView);
myWebView.setWebViewClient(new WebViewClient(){
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
view.loadData("Impossible de charger la page, veuillez vérifier votre connexion internet.", "text/html", "UTF-8");
}

});

//...on active JavaScript...
WebSettings webSettings = wvSite.getSettings();
webSettings.setJavaScriptEnabled(true);

//...et on charge la page
wvSite.loadUrl("https://m.facebook.com/Google");
}
});

// Nous cherchons le bouton dans notre interface
((ImageButton)findViewById(R.id.boutonvip))
// Nous paramétrons un écouteur sur l’événement ‘click’ de ce bouton
.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// Nous affichons un message à l’utilisateur
// Instanciation du WebView...

webv1.setVisibility(View.VISIBLE);
WebView wvSite = (WebView)findViewById(R.id.webView);
WebView myWebView = (WebView) findViewById(R.id.webView);
myWebView.setWebViewClient(new WebViewClient(){
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
view.loadData("Impossible de charger la page, veuillez vérifier votre connexion internet.", "text/html", "UTF-8");
}

});

//...on active JavaScript...
WebSettings webSettings = wvSite.getSettings();
webSettings.setJavaScriptEnabled(true);

//...et on charge la page
wvSite.loadUrl("http://www.google.fr");
}
});

// Nous cherchons le bouton dans notre interface
((ImageButton)findViewById(R.id.boutonlive))
// Nous paramétrons un écouteur sur l’événement ‘click’ de ce bouton
.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// Nous affichons un message à l’utilisateur
// Instanciation du WebView...

webv1.setVisibility(View.VISIBLE);
WebView wvSite = (WebView)findViewById(R.id.webView);
WebView myWebView = (WebView) findViewById(R.id.webView);
myWebView.setWebViewClient(new WebViewClient(){
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
view.loadData("Impossible de charger la page, veuillez vérifier votre connexion internet.", "text/html", "UTF-8");
}

});

//...on active JavaScript...
WebSettings webSettings = wvSite.getSettings();
webSettings.setJavaScriptEnabled(true);

//...et on charge la page
wvSite.loadUrl("http://www.google.de");
}
});

// Nous cherchons le bouton dans notre interface
((ImageButton)findViewById(R.id.liste))
// Nous paramétrons un écouteur sur l’évén

Code Snippets

package com.anthoapps.googlewebviewsample;

public class MainActivity extends Activity {
    /** Called when the activity is first created. */
    //AFFICHAGE DU LOGO PENDANT 3SEC
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.fragment_main);

        final ImageView imgv1 = (ImageView) findViewById(R.id.logo);
        imgv1.setVisibility(View.VISIBLE);
        new Handler().postDelayed(new Runnable() {
            @Override
            public void run() {
                imgv1.setVisibility(View.GONE);
            }
        },2 * 1000); // Pour 3 secondes
        final WebView webv1 = (WebView) findViewById(R.id.webView);
        webv1.setVisibility(View.INVISIBLE);

        // Nous cherchons le bouton dans notre interface
        ((ImageButton)findViewById(R.id.boutonfacebook))
        // Nous paramétrons un écouteur sur l’événement ‘click’ de ce bouton
        .setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {
                // Nous affichons un message à l’utilisateur
                // Instanciation du WebView...

                webv1.setVisibility(View.VISIBLE);
                WebView wvSite = (WebView)findViewById(R.id.webView);
                WebView myWebView = (WebView) findViewById(R.id.webView);
                myWebView.setWebViewClient(new WebViewClient(){
                    public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
                        view.loadData("Impossible de charger la page, veuillez vérifier votre connexion internet.", "text/html", "UTF-8");
                    }

                });

                //...on active JavaScript...
                WebSettings webSettings = wvSite.getSettings();
                webSettings.setJavaScriptEnabled(true);

                //...et on charge la page
                wvSite.loadUrl("https://m.facebook.com/Google");
            }
        }); 

        // Nous cherchons le bouton dans notre interface
        ((ImageButton)findViewById(R.id.boutonvip))
        // Nous paramétrons un écouteur sur l’événement ‘click’ de ce bouton
        .setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {
                // Nous affichons un message à l’utilisateur
                // Instanciation du WebView...

                webv1.setVisibility(View.VISIBLE);
                WebView wvSite = (WebView)findViewById(R.id.webView);
                WebView myWebView = (WebView) findViewById(R.id.webView);
                myWebView.setWebViewClient(new WebViewClient(){
                    public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
                        view.loadData("Impossible de charger la page, veuillez vérifier votre connexion internet.", "text/html", "UTF-8");
        

Context

StackExchange Code Review Q#68409, answer score: 2

Revisions (0)

No revisions yet.