gpt4 book ai didi

c# - 启动画面 Activity 强制我的设备重新启动

转载 作者:行者123 更新时间:2023-11-30 00:38:19 27 4
gpt4 key购买 nike

我正在查看关于 Xamarin 的一篇文章,该文章指导我们如何在 AppCompatActivity 上添加启动画面。每当我运行该应用程序时,它都会强制我的设备重新启动。

这是我为解决问题所做的工作,但我失败了。

  1. 将 Java 最大堆大小设置为 1G
  2. 正确遵循 Xamarin article 中列出的步骤用于启动画面创建
  3. 正确安装 AppCompatv7 和 v4 支持

问题依旧存在。这是我的代码也许我在编码部分做错了。

启动 Activity

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Android.App;
using Android.Content;
using Android.OS;
using Android.Runtime;
using Android.Support.V7.App;
using Android.Views;
using Android.Widget;

namespace TestApp
{
[Activity(Label = "SplashActivity", MainLauncher = true, NoHistory = true, Theme = "@style/MyTheme.Splash")]
public class SplashActivity : AppCompatActivity
{
protected override void OnCreate(Bundle savedInstanceState)
{
base.OnCreate(savedInstanceState);

// Create your application here
var startupTask = new Task(SimulateStartup);
startupTask.Start();

}
private async void SimulateStartup()
{
await Task.Delay(4000);
var intent = new Intent(this, typeof(MainActivity));
intent.AddFlags(ActivityFlags.ClearTop | ActivityFlags.NewTask);
StartActivity(intent);
}
}
}

主 Activity

using System.Threading.Tasks;
using Android.App;
using Android.Widget;
using Android.OS;
using Android.Support.V7.App;
using System;
using Android.Content;

namespace TestApp
{
[Activity(Label = "MainActivity")]
public class MainActivity : AppCompatActivity
{
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);

// Set our view from the "main" layout resource
SetContentView (Resource.Layout.Main);
}


}
}

样式.xml

<?xml version="1.0" encoding="utf-8" ?>
<resources>
<style name="MyTheme.Base" parent="Theme.AppCompat.Light">
</style>

<style name="MyTheme" parent="MyTheme.Base">

</style>

<style name="MyTheme.Splash" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:windowBackground">@drawable/splash_screen</item>
<item name="android:windowNoTitle">true</item>
<item name="android:windowFullscreen">true</item>
</style>
</resources>

splash_screen.xml

<?xml version="1.0" encoding="utf-8" ?> 
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<color android:color="@color/splash_background"/>
</item>
<item>
<bitmap android:src="@drawable/splash" android:tileMode="disabled" android:gravity="center" />
</item>
</layer-list>

colors.xml

<?xml version="1.0" encoding="utf-8" ?>
<resources>
<color name="primary">#4682b4</color>
<color name="primaryDark">#2c6493</color>
<color name="accent">#FFC107</color>
<color name="window_background">#F5F5F5</color>
<color name="splash_background">#4682b4</color>
</resources>

最佳答案

请检查您的位图大小。如果它太大,可能会导致重启:参见 Xamarin Android App causes device reboot

关于c# - 启动画面 Activity 强制我的设备重新启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43030329/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com