相关疑难解决方法(0)

如何使用保存实例状态保存Android Activity状态?

我一直在研究Android SDK平台,有点不清楚如何保存应用程序的状态.因此,考虑到'Hello,Android'示例的这种小型重新设计:

package com.android.hello;

import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;

public class HelloAndroid extends Activity {

  private TextView mTextView = null;

  /** Called when the activity is first created. */
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    mTextView = new TextView(this);

    if (savedInstanceState == null) {
       mTextView.setText("Welcome to HelloAndroid!");
    } else {
       mTextView.setText("Welcome back.");
    }

    setContentView(mTextView);
  }
}
Run Code Online (Sandbox Code Playgroud)

我认为这对于最简单的情况就足够了,但无论我如何远离应用程序,它总是以第一条消息响应.

我确信解决方案就像覆盖onPause或类似的那样简单,但我已经在文档中捅了大约30分钟左右,并且没有找到任何明显的东西.

android application-state android-activity

2538
推荐指数
26
解决办法
74万
查看次数

Android活动会重新创建

我的应用程序通常工作正常,直到我在特定设备上遇到一个奇怪的问题.App中有2项活动.在ActivityA中启动ActivityB后,ActivityA启动没有问题.但是,在我通过推回硬件按钮或调用finish()返回ActivityA之后; 在ActivityB中的closeButton内部,ActivityA重新加载自身.它再次触发onCreate()并重新加载其所有内容.而且我没有改变手机的方向.这种奇怪的行为只出现在超过1.000下载app的15部手机中.

此问题仅发生在Galaxy S3 Android OS 4.1.2上.这也很奇怪.

你知道为什么会这样吗?

当我在按钮监听器中启动一个新的Activity时,如下所示:

ActivityA.java(MesajlarListViewActivity)

    public class MesajlarListViewActivity extends TrackedActivity {

    Context context = null;

    // contacts JSONArray
    JSONArray contacts = null;

    ArrayList<Message> productArray = new ArrayList<Message>();

    private ProductAdapter adapter;
    private ListView productList;
    private Runnable viewOrders;
    private HoloProgressIndicator profilInfoProgress = null;

    ImageView kapatButton = null;

    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.mesajlar_list);

        context = this;

        kapatButton = (ImageView) findViewById(R.id.kapat_button);
        /* kapat button onclick listener. */
        // =================================================================================================================
        kapatButton.setOnClickListener(new View.OnClickListener() {
            public void onClick(View …
Run Code Online (Sandbox Code Playgroud)

mobile android galaxy

18
推荐指数
5
解决办法
2万
查看次数