我正在创建一个将数据从一个活动传输到另一个活动的意图,如下所示:
Intent intent = new Intent(this, ActivityHighScore.class);
intent.putExtra("USERNAME", username);
intent.putExtra("PLAYERMOVES", playerMoves);
this.startActivity(intent);
Run Code Online (Sandbox Code Playgroud)
然后我想检查活动开始时是否存在所有这些数据,因为它可以从其他来源启动而不设置此数据.我正在使用这个声明:
Bundle bundle = getIntent().getExtras();
if (!bundle.getString("USERNAME").equals(null) && bundle.getInt("PLAYERMOVES") != 0){
String username = bundle.getString("USERNAME");
int playerMoves = bundle.getInt("PLAYERMOVES");
addHighScore(username, playerMoves);
}
Run Code Online (Sandbox Code Playgroud)
但这导致了一个无效的pointerexception,我完全确定如何.我以为我正在处理Strings和.equals(),但我认为......任何帮助都会非常感激.谢谢.
我正在尝试将整数数组与我唯一制作的imageviews标签进行比较.
使用这一行:
if(grid[i][j] == buttons[k].getTag()){
Run Code Online (Sandbox Code Playgroud)
我知道我在正确的轨道上,但我无法弄清楚我是否需要投射或使用方法.我知道这是一个简单的问题,但是非常感谢任何帮助,谢谢.
我已经在imageview上将标记设置为"空白",因此它在xml文件中看起来像这样
android:tag="blank"
Run Code Online (Sandbox Code Playgroud)
现在当我跑这个
((String) buttons[button-2].getTag() == "blank"
Run Code Online (Sandbox Code Playgroud)
它返回false.我找不到为什么,有什么想法吗?任何帮助非常感谢.