小编Ben*_*292的帖子

来自getExtras()的NullPointerException

我正在创建一个将数据从一个活动传输到另一个活动的意图,如下所示:

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(),但我认为......任何帮助都会非常感激.谢谢.

android bundle nullpointerexception android-intent

8
推荐指数
1
解决办法
1万
查看次数

将视图的标记与整数进行比较

我正在尝试将整数数组与我唯一制作的imageviews标签进行比较.

使用这一行:

if(grid[i][j] == buttons[k].getTag()){
Run Code Online (Sandbox Code Playgroud)

我知道我在正确的轨道上,但我无法弄清楚我是否需​​要投射或使用方法.我知道这是一个简单的问题,但是非常感谢任何帮助,谢谢.

tags android integer compare

6
推荐指数
3
解决办法
2万
查看次数

getTag()返回一个假字符串

我已经在imageview上将标记设置为"空白",因此它在xml文件中看起来像这样

android:tag="blank"
Run Code Online (Sandbox Code Playgroud)

现在当我跑这个

((String) buttons[button-2].getTag() == "blank"
Run Code Online (Sandbox Code Playgroud)

它返回false.我找不到为什么,有什么想法吗?任何帮助非常感谢.

string android false-positive

2
推荐指数
1
解决办法
2580
查看次数