如何更改 xamarin 表单的 android 启动器图标

Mus*_*afa 2 xamarin.android xamarin.forms

我可以在两个地方更改我的 xamarin forms android 项目的图标。一个位于 .Android > MainActivity.cs 中

  [Activity(Label = "ZammyTestApp", Icon = "@mipmap/icon", Theme = "@style/MainTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)]
    public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity
Run Code Online (Sandbox Code Playgroud)

还有清单文件。哪一个是正确的地方

its*_*box 5

我建议您更改 MainActivity 中的图标。假设您的 MainActivity 中有一个图标活动定义,然后您尝试从清单文件更改图标,图标不会更改,因为主活动中的图标活动定义会覆盖清单。

为什么 MainActivity 会覆盖清单?

如果您单击此处,文档指出如果您使用[Activity]自定义属性,则会导致 xml 片段在编译时添加到 AndroidManifest.xml 中。

单击此处查看该[Activity]属性如何帮助在 xml 片段中生成图标。例如:

[Activity (Label="My App", MainLauncher=true, Icon="@drawable/myicon")] 
public class MyActivity : Activity 
{
}
Run Code Online (Sandbox Code Playgroud)

此示例生成以下 xml 片段:

<activity android:icon="@drawable/myicon" android:label="My App" 
      android:name="md5a7a3c803e481ad8926683588c7e9031b.MainActivity">
    <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)

并在 xamarin 论坛中检查已接受的答案。