2

在我的主要活动中,我有 5 个图像视图。通过单击每个图像,它应该将活动导航到另一个。但我的问题是,在单击图像时,它会显示一次相同的活动,然后显示一段时间的黑屏,然后只有它显示第二个活动。我用谷歌搜索了这个,但我不知道如何纠正这个..到目前为止我已经尝试过

private View.OnClickListener onClickListener = new View.OnClickListener()
      {
        public void onClick(View View)
        {
         {    
  Intent intent = new Intent(main.this, activity1.class);
        //intent.setFlag(Intent.FLAG_ACTIVITY_NO_ANIMATION);
             //   intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                             overridePendingTransition (0, 0);
                startActivity(intent);

             /* Intent i = new Intent(main.this, activity1.class);
            startActivity(i);   */
              // startActivity(new Intent(main.this, activity1.class)));
          }

但没有什么对我有用..帮我解决这个问题..提前谢谢..

4

6 回答 6

2

也许您正在使用启动模式,因为singleInstance它需要大量时间来重新排列堆栈。请从清单文件中删除此行

android:launchMode="singleInstance"
于 2014-05-20T10:02:09.690 回答
0

Add overridePendingTransition(0, 0); before startActivity(intent);

This works for me. Hope this helps.

于 2013-10-30T12:16:14.677 回答
0
Imageview.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                Intent i = new Intent(CurrentclassName.this,TargetclassName.class);
                startActivity(i);
            }
        });
于 2013-10-30T11:59:20.610 回答
0

1) It sounds you are testing on emulator. They are slow and take some time to load new activity, meanwhile blank screen shows. Running it on real device will solve the problem.

2) May be you are loading some data in onCreate of next activity. If you do, do it in a thread or Async task.

于 2013-10-30T12:08:00.637 回答
0

感谢“Maulik”,我修复了黑屏问题。

正如他所说:

首先,在styles.xml中将下一行添加到您的主题首选项中

<item name="android:windowDisablePreview">true</item>

然后,在你调用startActivity()之前,你应该调用

overridePendingTransition(0,0);

或者

overridePendingTransition(R.anim.your_custom_anim1, R.anim.your_custom_anim2);
于 2019-03-05T22:52:17.703 回答
0

在您的 style.xml 文件中做一个简单的技巧:只需添加<item name="android:windowDisablePreview">true</item> 并检查您的onCreate()方法。确保它没有负载过重,并且每次在加载活动之前,这意味着在startActivity(intent);添加之前overridePendingTransition(0,0);希望这会有所帮助。

于 2017-06-29T06:47:55.890 回答