从Xamarin Android上的另一个活动开始活动

时间:2014-10-24 07:06:37

标签: android android-activity xamarin call

我发现这个java代码创建了一个通用的方法来启动其他活动的任何活动。

public void gotoActivity(Class activityClassReference)
{
    Intent i = new Intent(this,activityClassReference);
    startActivity(i);
}

如何将该代码转换为c#for xamarin-Android?

提前致谢。

4 个答案:

答案 0 :(得分:11)

你可以写:

public void GoToActivity(Type myActivity)
{
            StartActivity(myActivity);
}

并称之为:

 GoToActivity(typeof(ActivityType));

或者只写:

StartActivity(typeof(ActivityType));

答案 1 :(得分:4)

void btnEntrar_Click(object sender,EventArgs e)
    { 
        var NxtAct= new Intent(this, typeof(Perguntas2));
        StartActivity(NxtAct);
    }

在我的代码中我做了这个

答案 2 :(得分:2)

这就是我在我的应用程序中完成它的方式

    public void StartAuthenticatedActivity(System.Type activityType)
    {
        var intent = new Intent(this, activityType);
        StartActivity(intent);
    }

    public void StartAuthenticatedActivity<TActivity>() where TActivity: Activity
    {
        StartAuthenticatedActivity(typeof(TActivity));
    }

然后,您可以添加TActivity : YourBaseActivity是您已创建的基本活动的位置

答案 3 :(得分:0)

我知道这个问题可能已经过时,但我有一个不同的方法,有一个外部课程,用于对任何现有活动进行一般呼叫操作:

public static class GeneralFunctions
    {
        public static void changeView(Activity _callerActivity, Type activityType)
        {
            ContextWrapper cW = new ContextWrapper(_callerActivity);
            cW.StartActivity(intent);
        }
    }

Button redirectButton = FindViewById<Button>(Resource.Id.RedirectButton);

redirectButton.Click += delegate
{
    GeneralFunctions.changeView(this, typeof(LoginView));
};

也许这对你们中的一些人有帮助