- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
简单代码:
public class ZSEEActivity extends TabActivity {
private WebView webview ;
private WebView webviewtwo;
private TabHost mTabHost;
private int a;
protected void onStart() {
super.onStart();
// The activity is about to become visible.
}
protected void onStop() {
super.onStop();
// The activity is about to become visible.
}
protected void onRestart() {
super.onRestart();
}
protected void onDestroy(){
super.onDestroy();
}
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final Activity activity = this;
mTabHost = getTabHost();
mTabHost.addTab(mTabHost.newTabSpec("tab_test1").setIndicator("Zastępstwa").setContent(R.id.tab1));
mTabHost.addTab(mTabHost.newTabSpec("tab_test2").setIndicator("Plan Lekcji").setContent(R.id.tab2));
mTabHost.addTab(mTabHost.newTabSpec("tab_test3").setIndicator("O programie").setContent(R.id.tab3));
webview = (WebView) findViewById(R.id.webView1);
webviewtwo = (WebView) findViewById(R.id.webView2);
final WebSettings webviewtwoSettings = webviewtwo.getSettings();
if (savedInstanceState != null){
webview.restoreState(savedInstanceState.getBundle("stateone"));
webviewtwo.restoreState(savedInstanceState.getBundle("statetwo"));
webviewtwoSettings.setTextSize(TextSize.LARGER);
mTabHost.setCurrentTab(savedInstanceState.getInt("CURRENT_TAB"));
}
else{
webview.loadUrl("http://zsee.bytom.pl/ogloszenia.php");
webviewtwo.loadUrl("http://zsee.bytom.pl/plannew/index.html");
webviewtwoSettings.setTextSize(TextSize.LARGER);
mTabHost.setCurrentTab(0);
}
webview.setWebViewClient(new WebViewClient() {
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
String summary = "<html><body><meta http-equiv=\"Content-Type\" content=\"text/html;charset=utf-8\" ><center>Coś się zepsuło :(</center></body></html>";
webview.loadData(summary, "text/html","utf-8");
Toast.makeText(activity, "O nie! " + description, Toast.LENGTH_SHORT).show();
}
});
webviewtwo.setWebViewClient(new WebViewClient() {
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
String summary = "<html><body><meta http-equiv=\"Content-Type\" content=\"text/html;charset=utf-8\" ><center>Coś się zepsuło :(</center></body></html>";
webviewtwo.loadData(summary, "text/html","utf-8");
webviewtwoSettings.setTextSize(TextSize.NORMAL);
Toast.makeText(activity, "O nie! " + description, Toast.LENGTH_SHORT).show();
}
});
}
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.main, menu);
return true;
}
protected void onSaveInstanceState(Bundle outState) {
Bundle outStateone = new Bundle();
Bundle outStatetwo = new Bundle();
webview.saveState(outStateone);
webviewtwo.saveState(outStatetwo);
outState.putBundle("stateone", outStateone);
outState.putBundle("statetwo", outStatetwo);
outState.putInt("CURRENT_TAB", mTabHost.getCurrentTab());
}
public boolean onOptionsItemSelected(MenuItem item) {
// Handle item selection
switch (item.getItemId()) {
case R.id.item1:
final AlertDialog alertdialog= new AlertDialog.Builder(this).create();
alertdialog.setTitle("O Programie");
alertdialog.setMessage("Zmiany w 1.0.1: \n-Obsługa planu z dnia 17.10.2011\n-Drobne Poprawki");
alertdialog.setButton("Fajno", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
alertdialog.cancel();
}
});
alertdialog.show();
return true;
case R.id.item2:
finish();
case R.id.item3:
if(mTabHost.getCurrentTab() == 0){
webview.loadUrl("http://zsee.bytom.pl/ogloszenia.php");
}
else if(mTabHost.getCurrentTab() == 1)
{
webviewtwo.loadUrl("http://zsee.bytom.pl/plannew/index.html");
}
default:
return super.onOptionsItemSelected(item);
}
}
}
现在是我的问题。在我按下后退按钮后, onStop() 代码将被执行并 onDestroy。我怎样才能不杀死应用程序?我想要这个应用程序在后台运行。现在,当我按下后退按钮并打开应用程序时,所有数据都会再次下载并加载到 WebView 中。那么如何让这个过程在后台运行?
抱歉我的英语不好:)
塞拉恩
最佳答案
使用 Android 服务
在后台而不是 Activity 中执行某些操作。
并使用广播接收器
从服务调用您的 Activity 。当你的后台工作完成时。
如果你想做一些小事情,那么只需覆盖 onKeyDown()
@Override
public boolean onKeyDown(int keyCode, KeyEvent event)
{
if (keyCode == KeyEvent.KEYCODE_BACK)
{
// put your stuff here or just block the back button for perticular activity
return true;
}
return super.onKeyDown(keyCode, event);
}
关于java - onStop后如何不杀死进程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7797010/
我正在阅读有关 Activity 生命周期方法的文档 here 这是文档中表格的快照。 onStop() 方法在此处被标记为可终止。但是,尚不清楚 Activity 何时可以终止 - 在基础 Acti
我想实现某种监视功能,该功能可以告诉我我的应用何时崩溃或停止或暂停。因此,我有3个 Activity ,到目前为止我已经实现了,以便在mainActivity中调用onPause时,它会向我发送一封邮
我有一个应用程序,其 onStop() 方法中有一个 while 循环。在日志中我发现了这一行: 07-06 08:35:43.616 W/ActivityManager( 837): Activi
是否可以让 SFML 1.6 自行处理音乐结尾?目前我有这个: //in music.cpp music.Play() //in main.cpp //on every frame check for
简介:我做了一个淡出/淡入淡出所有 View 的不透明度。我想在切换 Activity 之间制作动画。我现在必须将淡入/淡出添加到每个 Activity 中的每个 onStop/onResume。 问
我想制作一个无法被杀死或破坏的应用程序。我试过了 @Override public void onStop() { super.onPause(); } 但这不起作用,应用程序仍然被杀死。那
我的应用程序从服务接收消息,它必须对其执行一些处理。在此之前,它必须连接到另一个服务 (GoogleApiClient)。发生的情况是应用程序调用 onStop 之前 GoogleApiClient
我尝试使用onStop()方法,但调用时代码并未执行。 我正在使用 TabHost 从一个 Activity 移动到另一个 Activity 。 当我移动到另一个选项卡时,此代码应该可以工作。 @Ov
我正在尝试获取 Activity 生命周期的日志。我在这里遇到了一些奇怪的问题。 当我将 Activity 的主题用作 android:theme="@style/Theme.AppCompat.Li
我有一个媒体播放器,它会在用户关闭应用程序时停止播放,方法是按下主页按钮、使用后退按钮或只是打开另一个应用程序。为获得此行为,我向我的主要 Activity 添加了一个 onStop(),它告诉我的
我发现我的 Activity onStop() 方法将在不到 10 秒的延迟后被调用。我以前从未见过这种行为。 Note :- The activity is singleTop and it sta
我在类似的时钟应用程序中使用了这个示例代码: http://about-android.blogspot.in/2010/04/create-apps-to-show-digital-time-in_
目前,我将平板电脑连接到其他设备(通过蓝牙)。连接成功,但如果 Activity 暂停并停止,例如按下主屏幕时,它肯定会断开连接。我总是可以在 OnStop() 或其他东西中重新连接,但我想在整个过程
为什么程序在“String temp_str = string_array[1]”处崩溃?Logcat:java.lang.NullPointerException:尝试读取空数组。 public c
我终于完成了应用程序中的所有内容,但现在每当我使用除“主页”按钮之外的任何操作退出它时,它都会闪烁强制关闭屏幕,然后它就会消失。我知道这没什么大不了的,但我真的希望这种情况停止发生,我终于得到了一个
我使用 Azure 云辅助角色来处理来自队列的传入任务。每个任务的处理最多可能需要几个小时,每个工作角色最多可以同时处理 N 个任务。基本上,它正在工作。 现在,您可以阅读documentation有
在我的简单 android 应用程序中,我有 2 个 activities。在第一个 activity(主要 Activity )中,我覆盖了 ON STOP 方法。但是当我去做第二个 activit
如果我有一个名为 onStop 的方法,它会调用 super.onStop();。这个方法什么时候运行? 在我的主要 Activity 中,我启动了另一个 Activity ,如下所示:startAc
在我的主要 Activity 中,在 onStop 下,我设置了 myVar = true。在 onResume 中,我检查 myVar = true 并执行某些操作。 如果您在我的主要 Activi
我有一个 Activity,我想在不调用 onDestroy() 的情况下关闭它。所以我使用 onStop(); 看起来像 @Override public void onStop(){
我是一名优秀的程序员,十分优秀!