2016-04-06 30 views
0

Bu Sorunu düzeltmenin güzel bir yolu var mı?1 Tıkla -> Geri dön// Geri dönemiyorum -> kapat

Web sayfamda backbutton'u tıklatırsam geri dönebilirim. Bir kez tıklarsam geri dönmenin bir yoluna ihtiyacım var ve eğer geri dönemezsem (startdisplay/beginide), "Uygulamadan Çıkmak İçin Bir Kez Daha Tıkla" yazan bir tost. Mümkün mü?

public class MainActivity AppCompatActivity bir temp küresel variable.I kullanabilirsiniz

cevap

0

Merhaba ben önermek çalışması gerekir Zamana dayalı farklı bir yöntem. Çünkü kullanıcı, çıkış hakkında uyarı veren tost mesajını gördükten sonra, uygulamadan çıkmak istememelidir.

boolean doubleBack = false; 
@Override 
public void onBackPressed() { 
    if (mWebView.canGoBack()) { 
     mWebView.goBack(); 
     return ; 
    } 

    if (doubleBack) { 
     super.onBackPressed(); 
     return; 
    } 

    doubleBack = true; 
    Toast.makeText(this, "Click once more to Exit the app", Toast.LENGTH_SHORT).show(); 

    new Handler().postDelayed(new Runnable() { 

     @Override 
     public void run() { 
      doubleBack = false;      
     } 
    }, 2000); 
} 
+0

thx Emin Ayar, bana yardım ettiniz! –

+0

Bunu duyduğuma sevindim, rica ederim :) –

0

{

private ImageButton Ilias_link; 
private ImageButton Lsf_link; 
private WebView mWebView; 


@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 


    Ilias_link = (ImageButton) findViewById(R.id.ilias_link); 
    mWebView = new WebView(this); 
    Ilias_link.setOnClickListener(new View.OnClickListener() { 
     public void onClick(View v) { 
      mWebView.getSettings().setJavaScriptEnabled(true); 
      mWebView.loadUrl("https://elearns02.fh-biberach.de/ilias3/login.php?target=&soap_pw=&ext_uid=&cookies=nocookies&client_id=HSBC&lang=de"); 
      mWebView.setWebViewClient(new WebViewClient()); 
      setContentView(mWebView); 

     } 
    }); 

    Lsf_link = (ImageButton) findViewById(R.id.lsf_link); 
    mWebView = new WebView(this); 
    Lsf_link.setOnClickListener(new View.OnClickListener() { 
     public void onClick(View v) { 
      mWebView.getSettings().setJavaScriptEnabled(true); 
      mWebView.loadUrl("https://lsf.fh-biberach.de/qisserver/rds?state=user&type=0"); 
      mWebView.setWebViewClient(new WebViewClient()); 
      setContentView(mWebView); 
     } 
    }); 
} 



@Override 
    public void onBackPressed() { 
     if (mWebView.canGoBack()) { 
      mWebView.goBack(); 
     } else { 
      super.onBackPressed(); 
     } 
} 

} uzanır test etmedim ama

boolean goback = false; 
@Override 
public void onBackPressed() { 
    if (mWebView.canGoBack()) { 
     mWebView.goBack(); 
    }else { 
     if(!goback) { 
      goback = true; 
      //show Toast here.. 
      return; 
     } 
     super.onBackPressed(); 
    } 
} 
İlgili konular