所以我正在尝试在我的应用上显示启动画面。我的代码没有错误,但是当我构建我的应用程序时,日志显示了我:
10-31 15:19:47.541 I / mono-stdout(1118):启动加载器启动画面 10-31 15:19:47.676 I / dalvikvm-heap(1118):将堆(frag case)增长到21.377MB,用于11520016字节分配 10-31 15:19:47.801 W / dalvikvm(1118):VFY:无法找到签名中引用的类(Landroid / graphics / drawable / Icon;) 10-31 15:19:47.801 I / dalvikvm(1118):找不到方法android.widget.ImageView.setImageIcon,从方法android.support.v7.widget.AppCompatImageView.setImageIcon引用 10-31 15:19:47.801 W / dalvikvm(1118):VFY:无法解析虚方法23537:Landroid / widget / ImageView; .setImageIcon(Landroid / graphics / drawable / Icon;)V 10-31 15:19:47.801 D / dalvikvm(1118):VFY:在0x0000处替换操作码0x6f 10-31 15:19:47.801 I / dalvikvm(1118):找不到方法android.content.res.Resources.getDrawable,从方法android.support.v7.widget.ResourcesWrapper.getDrawable中引用 10-31 15:19:47.801 W / dalvikvm(1118):VFY:无法解析虚拟方法702:Landroid / content / res / Resources; .getDrawable(ILandroid / content / res / Resources $ Theme;)Landroid / graphics /可拉伸/可绘制; 10-31 15:19:47.801 D / dalvikvm(1118):VFY:在0x0002处替换操作码0x6e 10-31 15:19:47.801 I / dalvikvm(1118):找不到方法android.content.res.Resources.getDrawableForDensity,从方法android.support.v7.widget.ResourcesWrapper.getDrawableForDensity中引用 10-31 15:19:47.801 W / dalvikvm(1118):VFY:无法解析虚方法704:Landroid / content / res / Resources; .getDrawableForDensity(IILandroid / content / res / Resources $ Theme;)Landroid / graphics /可拉伸/可绘制; 10-31 15:19:47.801 D / dalvikvm(1118):VFY:在0x0002处替换操作码0x6e 10-31 15:19:47.966 I / dalvikvm-heap(1118):将堆(frag case)增长到37.397MB,用于16777232字节分配 10-31 15:19:47.986 D / dalvikvm(1118):GC_CONCURRENT释放1026K,7%释放35974K / 38300K,暂停2ms + 3ms,总计19ms 10-31 15:19:48.151 E / dalvikvm(1118):找不到类'android.graphics.drawable.RippleDrawable',从方法android.support.v7.widget.AppCompatImageHelper.hasOverlappingRendering中引用 10-31 15:19:48.151 W / dalvikvm(1118):VFY:无法在Landroid / support / v7 / widget / AppCompatImageHelper中解析instanceof 240(Landroid / graphics / drawable / RippleDrawable;); fin doit loader启动画面 10-31 15:19:48.151 D / dalvikvm(1118):VFY:在0x000c处替换操作码0x20 10-31 15:19:48.151 I / mono-stdout(1118):结束加载程序启动画面
出现灰色屏幕而不是启动画面4-5秒,然后显示我的应用程序主屏幕。
首先,我增加了Java最大堆大小(1G或2G),但它没有修复。
我认为问题来自于我的图像尺寸,但是当我为低分辨率图像更改它们时,问题仍然是一样的。
以下是我的启动画面的xml代码:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/SplashScreenBackground">
<ImageView
android:layout_width="125dp"
android:layout_height="match_parent"
android:src="@drawable/IconSplashScreen"
android:layout_gravity="center" />
</LinearLayout>
这是我的启动画面活动的代码:
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
Console.WriteLine("start loader splash screen");
SetContentView(Resource.Layout.SplashScreen);
Console.WriteLine("end doit loader splash screen");
Thread.Sleep(1500);
Console.WriteLine("Pause de 1.5 sec terminé");
StartActivity(typeof(TargetActivity));
OverridePendingTransition(Resource.Animation.abc_fade_in, Resource.Animation.abc_fade_out);
}
我使用材料设计库。
我该如何解决?