C# Android,如何从另一个.cs文件调用另一个方法
这里需要一些帮助,所以我尝试从另一个.cs运行方法,我在mainActivity.cs中运行了以下代码C# Android,如何从另一个.cs文件调用另一个方法,c#,xamarin,xamarin.android,C#,Xamarin,Xamarin.android,这里需要一些帮助,所以我尝试从另一个.cs运行方法,我在mainActivity.cs中运行了以下代码 protected override void OnCreate(Bundle savedInstanceState) { startGame(); } public void startGame() { firstNum = FindViewById<TextView>(Resource.Id.tvFirstNum); secondNum = FindViewById<
protected override void OnCreate(Bundle savedInstanceState)
{
startGame();
}
public void startGame()
{
firstNum = FindViewById<TextView>(Resource.Id.tvFirstNum);
secondNum = FindViewById<TextView>(Resource.Id.tvSecondNum);
firstNum.Text = Convert.ToString(2);
secondNum.Text = Convert.ToString(2);
}
然而,我得到的错误是
java.lang.NullPointerException:尝试在null上调用虚拟方法“android.view.view android.app.Activity.findViewById(int)”
对象引用
有人知道为什么吗
谢谢 您自己正在实例化您的
MainActivity
类,它不会加载附带的布局。这是因为Android使用的生命周期方法没有被调用,所以你的OnCreate
方法永远不会启动(它通常处理布局)。因此,FindViewById
将返回空值
注意:您不应该像这里尝试的那样从另一个类调用视图(特别是当它是另一个活动时)。如果您仍然希望从另一个类调用此函数,可以将活动作为参数传递,但我不推荐这种方法
我建议你读一下这本书
private void BtnRestart_Click(object sender, EventArgs e)
{
MainActivity mp = new MainActivity();
mp.startGame();
}