Объяснение
Метка значка перезаписывается меткой, указанной на моей метке основного действия.
Мой AndroidManifest.xml имеет:
<manifest>
<application android:label="@string/app_name" />
</manifest>
Мой AssemblyInfo.cs имеет:
#if DEBUG
[assembly:Application(Debuggable=true, Label="@string/app_name")]
#else
[assembly:Application(Debuggable=false, Label="@string/app_name")]
#endif
Мой String.xml имеет:
<string name="app_name">MyApp</string>
Мой MainActivity.cs имеет:
[Activity (Label = "Demo App")]
Когда я отправляю apk на телефон по электронной почте, gmail просит меня установить «MyApp», который, похоже, исходит из манифеста или сборки. Однако значок на экране запуска приложения показывает «Демонстрационное приложение», которое исходит от MainActivity.cs.
Вопрос
Я хочу, чтобы метка из действия отображалась как название приложения (демонстрационное приложение), тогда как я хочу, чтобы имя запуска приложения было «MyApp». Могу ли я как-то переопределить заголовок, чтобы это заработало?
Отвечать
Мой AndroidManifest.xml имеет:
<manifest>
<application android:label="@string/app_name" android:icon="@drawable/AppIcon"/>
</manifest>
В String.xml есть:
<string name="app_name">MyApp</string>
<string name="Home">Demo App</string>
В MainActivity.cs: вместо этого
[Activity (Label = "Demo App")]
используйте ActionBar
, чтобы установить заголовок, значок. Тогда вы получите другое имя на экране запуска приложения и на главном экране.
[Activity(MainLauncher = true, LaunchMode = Android.Content.PM.LaunchMode.SingleTop,)]
public class MainActivity : Activity
{
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
SetContentView(Resource.Layout.main);
ActionBar.SetIcon(Resource.Drawable.Icon);
ActionBar.SetTitle(Resource.String.Home);
}
}