C# 如何使用从一个ViewController到另一个ViewController的数据来展开第一个ViewController';什么信息?
我用一个视图控制器编写了一个简单的高尔夫计分程序。一切都很好。我需要第二个VC来显示玩家之间的比赛结果(第一个VC上没有足够的空间)。如何避免从第一个VC获取空值 我尝试使用同一类的first View Controller,但收到委托错误。C# 如何使用从一个ViewController到另一个ViewController的数据来展开第一个ViewController';什么信息?,c#,storyboard,viewcontroller,C#,Storyboard,Viewcontroller,我用一个视图控制器编写了一个简单的高尔夫计分程序。一切都很好。我需要第二个VC来显示玩家之间的比赛结果(第一个VC上没有足够的空间)。如何避免从第一个VC获取空值 我尝试使用同一类的first View Controller,但收到委托错误。 我需要第二个VC来继承第一个VC数组的值。我假设这是一个Xamarin.iOS项目。你是如何到达第二个VC(UINavigationController…?)的。一种简单的方法(也假设使用UINavigationController)是在第二个VC中创建以
我需要第二个VC来继承第一个VC数组的值。我假设这是一个Xamarin.iOS项目。你是如何到达第二个VC(UINavigationController…?)的。一种简单的方法(也假设使用UINavigationController)是在第二个VC中创建以下内容
public int[] values;
然后在第一个VC中,您可以创建第二个VC,更新值数组,并在值数组更新后执行任何其他必要的逻辑
public OnNavigateToSecondVC() {
var secondVC = new SecondVC();
secondVC.values = values; // Reference to values array from first VC
NavigationController?.PushViewController(secondVC, true);
}
另一种方法是更新secondVC的构造函数,使其能够直接在数组中传递值
public partial class SecondVC : UIViewController
{
int[] values;
public SecondVC(int[] values) : base("SecondVC", null)
{
this.values = values;
}
public override void ViewDidLoad()
{
base.ViewDidLoad();
// Perform any additional setup after loading the view, typically from a nib.
}
public override void DidReceiveMemoryWarning()
{
base.DidReceiveMemoryWarning();
// Release any cached data, images, etc that aren't in use.
}
}
Swift还具有名为prepareforsgue的本机功能
如果您愿意,您也可以使用它:我已通过正确使用segue解决了此问题……感谢Swift中的segue准备为我工作。谢谢你的帮助!部分回答:“我假设这是一个Xamarin.iOS项目。”;是的,但我已经用Xcode swift完全重写了整个项目。从现在起,我为ios编写的所有内容都将使用Xcode。再次感谢你的帮助!