尝试传递对象引用并将其设置为新的脚本/类。 Player.cs
如何正确引用和分配
答案 0 :(得分:0)
我相信这是NullPointer异常的讨厌实例之一,它可以引用多个问题。它仅提供行号,但不提供该行中哪个引用为空。 NewPlayer
不为空,AchievementList
为空。您需要在ShowUI
方法中或更早在PanelUpdate构造函数中初始化该值。
P.S。我讨厌空引用异常的非特异性;非常令人沮丧。
答案 1 :(得分:0)
您的PlayerDetails对象中具有null属性。在调试模式下检查NewPlayer对象的属性,您将看到此内容。
即使在其上使用新的构造函数,也并不意味着将为属性提供值,除非在构造函数中为其专门指定了一个值。
您还需要显示PlayerDetails类的代码,以便为我们提供更好的主意。
也:
PlayerDetails Player = new PlayerDetails(); // Assigning a new value here means nothing
Player = NewPlayer;
您要在第1行上创建一个新的PlayerDetails对象,然后在第2行上为其分配一个不同的值。
PlayerDetails Player = NewPlayer;
很好。