为什么intent.getStringExtra总是为null?

时间:2018-11-30 05:58:37

标签: android android-intent

我看了看。尝试了很多事情,但没有返回数据(无论数据是否存在)

该信息的传递方式为:->注意我发布了错误的代码段,请参见下文

userLists.setOnItemClickListener(new AdapterView.OnItemClickListener(){
            @Override
            public void onItemClick(AdapterView<?> arg0, View arg1, int pos, long arg3) {
                Intent DisplayItems = new Intent(getApplicationContext(), Items.class);
                Map<String,String> storeMap = lst.get(pos);
                DisplayItems.putExtra("id", storeMap.get("id"));
                startActivityForResult(DisplayItems, 1);
            }

        });

在onCreate中收到:

groupIntent = getIntent();
        if(groupIntent.hasExtra("groupid")) {
            groupId = groupIntent.getStringExtra("groupid");
            resultCode = 2;
        }

groupId始终返回null。在调试组中,显示Intent-> mExtras-> mMap-> value [0] = 5c00a086d45213.24138362。其他所有类均按预期方式传递和接收意图。

编辑:我不好。这实际上是在插入多余的内容

public void btnCreateList_Click(View view) {
        Intent createList = new Intent(context, CreateList.class);
        if(groupId!=null) {
            String grp = groupId;
            createList.putExtra("groupid", grp);
        }
        startActivityForResult(createList, 1);
    }

1 个答案:

答案 0 :(得分:1)

代码应如下所示:

groupIntent = getIntent();
            if(groupIntent.hasExtra("id")) {
                groupId = groupIntent.getStringExtra("id");
                resultCode = 2;
            }