我正在撰写Android应用程序,其中包含两项活动:MainActivity
和SplashActivity
。当MainActivity
启动时,加载UI需要一些时间,而且它还在后台进行一些工作。因此,为了不显示不完整的用户界面(白屏等),我决定从MainActivity
方法开始onCreate()
开始,然后在一段时间后关闭SplashActivity
我假设在那时我的SplashActivity
已经加载了。为此,我尝试了以下代码:
MainActivity
在清单文件中,public class MainActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
Intent intent = new Intent(LoginActivity.this, SetPassword.class);
intent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
startActivity(intent);
.........
}
}
活动设置为LAUNCHER
。该代码如下:
MainActivity
。MainActivity
MainActivity
出现在前面。但我需要遵循以下行为
SplashActivity
从'背景'开始MainActivity
来到前面并在一段时间后关闭自己答案 0 :(得分:2)
您可以使用import org.springframework.data.mongodb.repository.MongoRepository;
import org.springframework.data.repository.query.Param;
import org.springframework.data.rest.core.annotation.RepositoryRestResource;
import org.springframework.util.Assert;
@RepositoryRestResource(collectionResourceRel = "urls", path = "urls")
public interface URLRepository extends MongoRepository<URL, String> {
List<URL> findByHash(@Param("hash") String hash);
}
。从AsyncTask
开始,当加载了所有必要的数据后,启动SplashActivity
。尝试这样的事情:
MainActivity
答案 1 :(得分:0)
您可以在MainActivity中启动对话框。它将显示在MainActivity前面,您可以在工作完成后关闭它。
见这里:Dialog
答案 2 :(得分:0)
您的任务可以通过在一个活动中使用片段或视图来解决。 在onCreate()方法的活动中,您可以显示SplashFragment。完成所有后台工作后,您可以将其替换为MainFragment。使用不同的视图(设置其可见性)可以实现相同的目的。
示例:
height
无论如何。如果要使用活动,则需要在SplashActivity中使用后台作业的监听器。您应该使用startActivityForResult()启动SplashActivity。完成工作后,您应该完成SplashActivity并继续在MainActivity中的onActivityResult()方法中进行处理。
答案 3 :(得分:0)
您可以先启动启动画面,然后导航到MainActivity,如下所示:
public class SplashScreen extends Activity {
int timeout = 5000;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_splash_screen);
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
Intent i = new Intent(SplashScreen.this, MainActivity.class);
startActivity(i);
finish();
}
}, timeout);
}
}
答案 4 :(得分:0)
开始你的飞溅 NO_HISTORY意图标记或在清单中为你的splah活动定义android:noHistory