android在方向改变时不重启线程

时间:2012-02-10 17:51:59

标签: android

我的应用程序基于此代码http://www.41post.com/4588/programming/android-coding-a-loading-screen-part-1。在doInBackground中,我的应用程序将连接到互联网并下载一些数据并填充数据库,通常需要一些时间才能完成。问题是当方向改变时,doInBackground函数重新启动并导致问题。

我提到了http://developer.android.com/guide/topics/resources/runtime-changes.html,它说要做类似

的事情
@Override
public Object onRetainNonConfigurationInstance() {
    final MyDataObject data = collectMyLoadedData();
    return data;
}

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

    final MyDataObject data = (MyDataObject) getLastNonConfigurationInstance();
    if (data == null) {
        data = loadMyData();
    }
    ...
}

但是在我的应用程序中,我不知道我应该在onRetainNonConfigurationInstance()下面放什么,因为从http://www.41post.com/4588/programming/android-coding-a-loading-screen-part-1的代码可以看出我调用了一个类而不是函数..

0 个答案:

没有答案