android:绘图在gmail之后消失了

时间:2013-02-26 16:18:17

标签: android share resume

我正在使用绘图应用程序,用户可以在绘图板中共享图片,并使用以下代码:

share = new Intent(Intent.ACTION_SEND);
share.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
share.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(attachment));
share.setType("image/png");
context.startActivity(Intent.createChooser(share, "Share Drawing"));

虽然可以通过whatsapp或gmail等成功发送图像,但在完成gmail操作并返回应用程序后,绘图板的绘图已经消失。

然而对于whatsapp,分享后仍然会保留图纸。

有没有人知道为什么以及如何在gmail返回后(在转到其他应用程序和恢复之后)仍然在drawView中保留绘图?非常感谢!

1 个答案:

答案 0 :(得分:0)

这将记录您的Activity的主要生命周期回调,然后您可以在logcat中检查它们。您可能必须在onSaveInstanceState回调中保存有关图像的一些信息,然后在onCreate回调中恢复它,假设您的活动确实被销毁并重新创建,但事实确实如此。

    public class MyActivity exetends Activity {
         private final String TAG = "MyActivity";

         @Override
         protected void onCreate(Bundle savedInstanceState) {
             Log.d(TAG, "onCreate")
         }

         @Override  
         protected void onStart() {
             Log.d(TAG, "onStart")
         }

         @Override
         protected void onRestart() {
             Log.d(TAG, "onRestart")
         }

         @Override
         protected void onResume() {
             Log.d(TAG, "onResume")
         }

         @Override
         protected void onPause() {
             Log.d(TAG, "onPause")
         }

         @Override
         protected void onStop() {
             Log.d(TAG, "onStop")
         }

         @Override
         protected void onDestroy() {
             Log.d(TAG, "onDestroy")
         }
         @Override
         protected void onSaveInstanceState(Bundle outBundle) {
             Log.d(TAG, "onSaveInstanceState);
         }

}