首页 > 解决方案 > 检查 getIntent().getStringExtra() 是否为空?

问题描述

我正在编写一个简单的 android 应用程序,该应用程序具有ListViewArrayList. 用户可以在文本框中键入,按下按钮,文本将ListView通过ArrayList. 用户可以输入的文本框位于单独的 Activity 上,因此每当用户按下“提交”以将项目添加到 时ListView,都会调用主 Activity 并通过intent. 但是,我需要检查文本是否为空,否则我的代码设置方式ListView将添加一个空条目。这是我目前拥有的:

    protected void onResume() {
    super.onResume();
    ArrayAdapter<Item> itemsAdapter = new itemsListAdapter(this, R.layout.adapter_view_layout, itemsArrayList);
    ListView itemsListView = findViewById(R.id.mainActivity_itemsListView1);
    itemsListView.setAdapter(itemsAdapter);
    String incomingItemName = getIntent().getStringExtra("ITEM_NAME");
    if (!incomingItemName.equals("")) { itemsArrayList.add(new Item(incomingItemName)); } //this line causes app to crash on start
    }

我写的if语句会导致应用程序在启动时崩溃,如果我注释掉应用程序启动正常的那一行。如果我itemsArrayList.add(new Item(incomingItemName));退出if语句,当用户进入活动以添加项目时会创建一个空白列表条目,然后只需返回主屏幕即可。

我对android编程比较陌生,所以任何帮助都将不胜感激。谢谢你。

标签: androidandroid-intent

解决方案


您可以使用Textutils.isEmpty()来检查您的字符串的意图。true如果您的输入字符串为空或为空,它将返回。


推荐阅读