每当我尝试从故事板上的不同ViewController设置标签的文本时,我会得到一个NullPointerException:
行System.NullReferenceException: Object reference not set to an instance of an object
UIApplication.Main(args, null, "AppDelegate");
两个视图控制器都使用相同的类。 这是我的代码:
async partial void LoginBtn_TouchUpInside(UIButton sender) { loadingIndicator.StartAnimating(); var uname = username.Text; var pwd = password.Text; Uri loginUri = new Uri($"http://<loginapi>:8080/api/login?user={uname}&pwd={pwd}"); WebClient c = new WebClient(); string[] userinfo = parseJsonToArray(await c.DownloadStringTaskAsync(loginUri)); welcomeLabel.Text = "Welcome, " + userinfo[0]; //index 0 of userinfo contains the user's full name. loadingIndicator.StopAnimating(); PerformSegue("loggedInSegue", this); }
我已经通过将其登录到控制台来验证它获取了正确的信息,如果我注释掉welcomeLabel.Text部分,其他所有内容都可以正常工作。
答案 0 :(得分:2)
您可以在Visual Studio或Xamarin Studio中启用所有异常,以便您可以在行中包含空引用。选中此项以启用所有例外 http://www.stefandevo.com/2015/12/20/xamarin-studio-tip-break-on-all-exceptions/