我有一个方法调用“SimpleEdit.getText()”可能会产生“java.lang.NullPointerException”错误,希望将其删除

我有一个方法调用“SimpleEdit.getText()”可能会产生“java.lang.NullPointerException”错误,希望将其删除,java,android,Java,Android,Android Studio非常新。使用EditText处理第一个应用程序。我想修复下面的代码行,这样就不会出现错误:我有一个方法调用'simpleEditText.getText'可能会产生'java.lang.NullPointerException'错误,并希望将其删除。任何建议都很好。我想这意味着我需要在获取文本之前检查SimpleEdit是否有空值 /* * Retrieve Edit Text Values */ EditText simpleEditText = (Ed

Android Studio非常新。使用EditText处理第一个应用程序。我想修复下面的代码行,这样就不会出现错误:我有一个方法调用'simpleEditText.getText'可能会产生'java.lang.NullPointerException'错误,并希望将其删除。任何建议都很好。我想这意味着我需要在获取文本之前检查SimpleEdit是否有空值

/*
 * Retrieve Edit Text Values
 */
    EditText simpleEditText = (EditText) findViewById(R.id.editLat);
    String strValue = simpleEditText.getText().toString();
这是与editLat关联的XML资源:

<EditText
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:inputType="numberDecimal"
        android:singleLine="true"
        android:lines="1"
        android:textSize="15dp"
        android:hint="@string/lat_hint"
        android:id="@+id/editLat"
        android:layout_below="@+id/textAsset"
        android:layout_toEndOf="@+id/textView3" />

这是因为getText是一个对象,可能没有赋值,并且为null。基本体和对象之间的区别在于基本体不能为null,但有一个默认值,例如int为0,boolean为false。所以当你得到我假设的文本对象时,你唯一能做的就是在下面的代码中

    /*
     * Retrieve Edit Text Values
     */
    EditText simpleEditText = (EditText) findViewById(R.id.editLat);
    Text text = simpleEditText.getText();
    String textString;
    if(text != null){
     textString = text.toString();
    } else {
       // Handle missing text object
    }

空检查和处理没有问题。这是您唯一的解决方案,除非您拥有android API并自行更改库

这是因为getText是一个对象,可能没有赋值,并且为null。基本体和对象之间的区别在于基本体不能为null,但有一个默认值,例如int为0,boolean为false。所以当你得到我假设的文本对象时,你唯一能做的就是在下面的代码中

    /*
     * Retrieve Edit Text Values
     */
    EditText simpleEditText = (EditText) findViewById(R.id.editLat);
    Text text = simpleEditText.getText();
    String textString;
    if(text != null){
     textString = text.toString();
    } else {
       // Handle missing text object
    }

空检查和处理没有问题。这是您唯一的解决方案,除非您拥有android API并自行更改库

当您初始化某些内容并且不确定是否为空时,可以添加安全检查:

String strValue;
EditText simpleEditText = (EditText) findViewById(R.id.editLat);
if(simpleEditText != null && !TextUtils.isEmpty(simpleEditText.getText())){
    strValue = simpleEditText.getText().toString();
}

当您初始化某些内容并且不确定是否为空时,可以添加安全检查:

String strValue;
EditText simpleEditText = (EditText) findViewById(R.id.editLat);
if(simpleEditText != null && !TextUtils.isEmpty(simpleEditText.getText())){
    strValue = simpleEditText.getText().toString();
}

did editlat在当前xml中定义Well在按钮单击时获取edittext的值,以便在执行任务时获取该值Yes editlat在当前xml中定义:did editlat在当前xml中定义Well在按钮单击时获取edittext的值,以便在执行任务时获取该值Yes editlat在当前xml中定义: