我正在使用c#开发一个Android应用程序,我的问题是当我在按钮事件之外更改菜单项的标题时,在Oncreate
方法中,我得到了{{1}但我能够在按钮点击事件中执行此操作而不会获得例外情况。我想要做的是更改SystemNullReference excepetion
内的项目标题,以便在应用程序启动时直接更改项目标题。到目前为止我所拥有的:
Oncreate method
为什么我有这个例外以及如何解决这个问题? 提前谢谢..
答案 0 :(得分:0)
移动这部分代码:
private Game game;
// executed before each test method
@Before
public void setup(){
Game game = new Game();
game.addPlayer(new Player(...));
}
@Test
public void addASecondSettlement(){
// context
game.getPlayer().addSettlement(new Settlement(1));
// action
game.getPlayer().addSettlement(new Settlement(2));
//assertion
Assert.assertEquals(2, game.findLastSetllement().getId());
}
在 if (selected == "English") // selected is a string value saved in Shared Preference
{
IMenuItem about = menu.FindItem(Resource.Id.About); // here where I am getting the SystemNullReference excepetion
about.SetTitle("About);
}
声明之前的OnCreateOptionsMenu
结尾。
你应该这样做,因为你在return
中初始化private IMenu menu;
值,在 OnCreateOptionsMenu
之后称为,并且你正在使用{{1}在OnCreate()
中,虽然它到目前为止尚未初始化。