在Monodroid中导航Android活动
本文关键字:Android 活动 导航 Monodroid | 更新日期: 2023-09-27 18:35:55
在使用Monodroid的Android应用程序中,我有几个活动。 我注意到(物理)后退按钮并不总是像人们预期的那样使应用程序返回到以前的活动。
此外,如果应用程序崩溃,则当前活动消失,但会显示应用程序的先前活动。根据我使用Java开发Android应用程序的经验,这不是我期望的行为。所以它可能是一个典型的单机器人的东西。我在这里错过了什么吗?
我有一个主要活动(飞溅),显示一次。 从一个活动导航到另一个活动是这样的:
我的主要活动
[Activity(Label = "x", MainLauncher = true, NoHistory = true, Icon = "@drawable/zoeker2", Theme="@android:style/Theme.NoTitleBar")]
public class SplashActivity : Activity
{
private void showLogon()
{
System.Threading.Thread.Sleep(500);
RunOnUiThread(delegate
{
StartActivity(typeof(LogonActivity));
});
}
我的登录活动
[Activity(Label = "x", Theme = "@android:style/Theme.NoTitleBar")]
public class LogonActivity : Activity
{
void LogonActivity_OnLogonSucceeded(object sender, EventArgs e)
{
Tools.Log("Logon Activity. Logon succeeded");
updateButtonStates();
var menuActivity = new Intent(this, typeof(MenuActivity));
StartActivity(menuActivity);
}
最后是菜单活动
[Activity(Label = "Menu", Theme="@android:style/Theme.NoTitleBar")]
public class MenuActivity : Activity, ILocationListener, ISensorEventListener
{
这里没有什么花哨的。我必须使用其他属性吗?有什么线索吗?
除了使用 NoHistory = true
的 SplashActivity 之外,我希望您记录的活动能够在 MonoDroid/Android 中的"正常 BackStack 操作"中工作
你的Java/Android体验也是你应该在Mono for Android中看到的。
你能试试像ApiDemo这样的东西吗 - 这在您当前的设置中有效吗 - https://github.com/xamarin/monodroid-samples/tree/master/ApiDemo
如果您仍然看到问题,那么也许您可以发布一个小的示例项目,或者您可以将其作为错误/问题报告给 http://bugzilla.xamarin.com/enter_bug.cgi
上:
此外,如果应用程序崩溃,当前活动会消失,但 显示应用的先前活动
这听起来很不寻常。您有时会看到Android在调试会话完成后尝试重新启动以前的应用程序 - 也许这就是您所看到的?