启动新活动时,主屏幕背景可以瞬间显示

时间:2012-01-02 12:47:54

标签: android android-intent android-3.0-honeycomb android-3.1-honeycomb

在三星Galaxy Tab 10.1"上运行下面的琐碎测试活动时(Android 3.1),在TestActivity2启动之前,我看到主屏幕背景的短暂闪烁。

没有看到这个闪光灯 - 在没有FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET的情况下运行时 - 在Galaxy Tab 7"上运行时运行Android 2.3

知道造成这种闪光的原因以及如何避免它?

public class TestActivity1 extends Activity
{
  protected void onCreate(Bundle savedInstanceState)
  {
    super.onCreate(savedInstanceState);
    TextView t = new TextView(this);
    t.setText("TestActivity1");
    t.setOnClickListener(new View.OnClickListener()
    {

      @Override
      public void onClick(View v)
      {
        //start TestActivity2
        Intent intent = new Intent(getApplicationContext(), TestActivity2.class);           
        intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
        startActivity(intent);          
      }
    });
    setContentView(t);
  }

}

在使用和不使用FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET的情况下比较测试运行的LogCat时,我注意到以下差异。

使用FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET

  

... INFO / SurfaceFlinger(223):id = 71删除了com.zappware.test / com.zappware.test.TestActivity1 idx = 2 Map Size = 3

没有FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET

  

... INFO / SurfaceFlinger(223):id = 75删除了com.zappware.test / com.zappware.test.TestActivity1 idx = 3 Map Size = 3

也许这会有所帮助?

0 个答案:

没有答案