我希望每次应用变为活动时都会显示启动画面.我创建了一个showSplash我调用的函数applicationDidBecomeActive:
-(void)showSplash
{
UIImageView *splashScreen = [[UIImageView alloc] initWithImage:[UIImage imageNamed: @"Default.png"]];
[self.window.rootViewController.view addSubview: splashScreen];
[self.window makeKeyAndVisible];
NSLog(@"begin splash");
[UIView animateWithDuration: 4.2
delay: 0.5
options: UIViewAnimationOptionCurveEaseOut
animations: ^{
splashScreen.alpha = 0.0;
}
completion: ^ (BOOL finished) {
[splashScreen removeFromSuperview];
NSLog(@"end splash");
}
];
}
Run Code Online (Sandbox Code Playgroud)
这就是我调用这个函数的方式:
- (void)applicationDidBecomeActive:(UIApplication *)application {
[self showSplash];
}
Run Code Online (Sandbox Code Playgroud)
但是没有闪屏.请指正.
我想在加载资源(图像和声音)时有一个闪屏.我怎么知道一切都装满了?是否在应用启动时加载了所有资源?
谢谢
我正在尝试创建一个Windows 8 C#/ XAML应用程序,我想要做的第一项任务是设置启动画面.
如何提供Splash屏幕元素文档中引用的100%,140%和180%版本?
该链接指的是Tiles概述,然后链接到Tile图像大小,然后链接到Globalizing tile和Toast notification,它既提供了文件夹命名约定,又提供了文件命名约定,这些都不适用于Splash屏幕.
为什么它不能成为一个很好的appxmanifest条目?
是否可以在iOS开发中添加.fla文件作为启动画面?如果没有,那么启动画面接受的动画文件的其他格式是什么?它接受GIF动画吗?或.swf文件?或者我必须逐帧编写动画.
如果是这样的程序是什么?我是否必须以添加图像的方式添加它,只是扩展名不同?
我有一个.fla文件,我想添加到我的代码中.不幸的是,我找不到任何关于这是否可行的材料.

这就是我在我的软件包资源管理器中的内容,所以让我们从顶部开始,然后解决我认为它所在的问题.
MainActivity.java -
package com.drg.idoser;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
Run Code Online (Sandbox Code Playgroud)
现在SplashActivity.java
package com.drg.idoser;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.Window;
import android.view.WindowManager;
public class SplashActivity extends Activity {
private static String TAG = SplashActivity.class.getName(); …Run Code Online (Sandbox Code Playgroud) 我在我的应用上创建了Preference活动,允许用户启动/停止背景启动画面音乐,如下所示:
public class Prefs extends PreferenceActivity{
@SuppressWarnings("deprecation")
@Override
protected void onCreate(Bundle savedInstanceState) {
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.prefs);
}
}
Run Code Online (Sandbox Code Playgroud)
在xml文件夹中创建prefs.xml:
<?xml version="1.0" encoding="utf-8" ?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
<CheckBoxPreference
android:title="splash music"
android:defaultValue="true"
android:key="checkbox"
android:summary="Plese remove music "/>
</PreferenceScreen>
Run Code Online (Sandbox Code Playgroud)
这个代码用于启动活动:
public class Splash extends Activity{
MediaPlayer ourSong;
@Override
protected void onCreate(Bundle Drandroid) {
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
// TODO Auto-generated method stub
super.onCreate(Drandroid);
setContentView(R.layout.splash);
ourSong = MediaPlayer.create(Splash.this, R.raw.splashsound);
SharedPreferences getPrefs =
PreferenceManager.getDefaultSharedPreferences(getBaseContext());
boolean music = getPrefs.getBoolean("checkbox", true);
if (music == true)
ourSong.start(); …Run Code Online (Sandbox Code Playgroud) 由于以下错误,我的构建失败
[aapt] res/drawable-xhdpi/splash.png:0:错误:已定义资源条目启动.
[aapt] res/drawable-xhdpi/splash.9.png:0:最初在这里定义.
有任何想法吗?谢谢!
我现在正在测试一个示例iOS应用程序,虽然我在Xcode(Project Target屏幕的Summary选项卡)中设置了所有新的启动图像,但PhoneGap 3.0仍然显示其默认的启动画面.为什么?即使splashscreen是一个插件,现在默认不包含在PhoneGap 3.0中.
iOS文档说的是关于启动图像而不是启动画面,它甚至强烈建议我们使用类似于启动图像的"第一屏幕",而不是像屏幕一样.这些是一样的吗?
我有一个Android应用程序,显示3秒的"启动画面".之后,MainActivity被加载.
不幸的是,MainActivity需要额外的约4秒才能加载.在第一次启动时甚至更长.但是,当应用程序加载时,一切运行顺利.
现在,如何在Splash Screen的显示期间实现MainActivity的加载?它应该显示一个图像,直到整个东西完全加载.我已经阅读了有关Async-Task的内容,但我不知道该放在哪里以及如何正确使用它.有谁可以帮助我吗?
SplashScreen.java
public class SplashScreen extends Activity {
private static int SPLASH_TIME_OUT = 3000;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_startup);
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
Intent i = new Intent(SplashScreen.this, MainActivity.class);
startActivity(i);
finish();
}
}, SPLASH_TIME_OUT);
}
}
Run Code Online (Sandbox Code Playgroud)
MainActivity.java
public class MainActivity extends Activity implements OnClickListener, MediaController.MediaPlayerControl {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//Some heavy processing
//starting services
//starting Google Text to Speech
//and so on...
}
}
Run Code Online (Sandbox Code Playgroud) 在应用程序启动时,我尝试在实际启动画面之前删除系统白色启动.我按照这个主题:如何在应用程序上修复白屏启动?并为启动活动创建了半透明样式:
<style name="Splash" parent="@android:style/Theme.Translucent">
<item name="windowNoTitle">true</item>
<item name="windowActionBar">false</item>
<item name="android:windowFullscreen">true</item>
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowDisablePreview">true</item>
</style>
Run Code Online (Sandbox Code Playgroud)
但是在安装后首次启动时,应用程序崩溃时出现以下未处理的异常:
E/AndroidRuntime: FATAL EXCEPTION: main
Process: ru.perekrestok.app, PID: 13791
java.lang.IllegalArgumentException: reportSizeConfigurations: ActivityRecord not found for: Token{5b77a38 null}
at android.os.Parcel.readException(Parcel.java:1687)
at android.os.Parcel.readException(Parcel.java:1636)
at android.app.ActivityManagerProxy.reportSizeConfigurations(ActivityManagerNative.java:6844)
at android.app.ActivityThread.reportSizeConfigurations(ActivityThread.java:2768)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2711)
at android.app.ActivityThread.-wrap12(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1460)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6077)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755)
Run Code Online (Sandbox Code Playgroud)
首次启动应用程序正常启动后.我能解决这个问题吗?我正在使用最新的android支持库,如果这很重要的话
splash-screen ×10
android ×6
ios ×3
iphone ×2
java ×2
aapt ×1
cordova ×1
crash ×1
objective-c ×1
resources ×1
translucency ×1
windows-8 ×1
winrt-xaml ×1
xml ×1