在我的主要活动中,我有5个图像视图。通过点击每个图像,它应该将活动导航到另一个。但我的问题是在点击图像时它显示相同的活动一次然后黑屏一段时间然后只有它正在展示第二项活动。我用Google搜索了但我不知道如何纠正这个问题。 到目前为止我已经尝试了
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)));
}
但没有任何对我有用..帮助我解决这个问题..提前谢谢..
答案 0 :(得分:1)
也许您正在使用启动模式singleInstance
,这需要花费大量时间重新排列堆栈。
请从清单文件中删除此行
android:launchMode="singleInstance"
答案 1 :(得分: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);
}
});
答案 2 :(得分:0)
1)听起来你在模拟器上进行测试。它们很慢并且需要一些时间来加载新活动,同时显示空白屏幕。在真实设备上运行它将解决问题。
2)您可能正在加载下一个活动的onCreate中的一些数据。如果这样做,请在线程或异步任务中执行。
答案 3 :(得分:0)
在overridePendingTransition(0, 0);
startActivity(intent);
这对我有用。希望这会有所帮助。
答案 4 :(得分:0)
在style.xml文件中执行简单的技巧:
只需添加<item name="android:windowDisablePreview">true</item>
并检查您的onCreate()
方法。确保它没有负载很重,并且每次加载活动之前都意味着startActivity(intent);
添加overridePendingTransition(0,0);
希望这会有所帮助。
答案 5 :(得分: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);