Sam*_*Sam 2 android android-activity
我有一个无UI MainActivity,它拥有一定的逻辑来确定用户是否已经登录.如果用户已登录,我将启动HomeActivity,如果没有,则启动LoginActivity.即使逻辑工作正常,我也看到它MainActivity在切换到所需活动之前确实开始了一段时间.有没有办法避免MainActivity完全提起,因为它会引起烦人的闪烁?
这是我的代码(省略逻辑) -
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (condition) {
intent = new Intent(this, HomeActivity.class);
} else {
intent = new Intent(this, LoginActivity.class);
}
startActivity(intent);
finish();
}
}
Run Code Online (Sandbox Code Playgroud)
提前致谢.
编辑
这是我在我的Android清单中所拥有的 -
<activity
android:name="org.step.main.MainActivity"
android:label="@string/app_name"
android:launchMode="singleInstance" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
Run Code Online (Sandbox Code Playgroud)
Mal*_*han 14
您可以尝试在意图上设置FLAG_ACTIVITY_NO_ANIMATION
intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
Run Code Online (Sandbox Code Playgroud)
和/或overridePendingTransition(0, 0)调用完成后调用()
您还可以使用Fragments替换活动 - 将MainActivity与全屏scontainer一起替换为登录片段或Home Fragment.