Invalid View ID in onActivityResult after finishing Activity

-1

When I try to set the text of an EditText in onActivity I get an error message that the ID is invalid, even though I'm using the same one as in onCreate.

Finishing Activity:

private fun calculate() {
    val result = Integer.parseInt(calculatorEditText.text.toString())
    val intent = Intent()
    intent.putExtra(RESULT, result)
    setResult(Activity.RESULT_OK, intent)
    finish()
}

Parent Activity:

override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
    super.onActivityResult(requestCode, resultCode, data)
    if (requestCode == CALCULATOR && resultCode == Activity.RESULT_OK && data != null) {
        val result = data.getIntExtra(CalculatorActivity.RESULT, 0)
        valueEditText.setText(result)
    }
}

Stack trace:

E/ius.lyxfinance: Invalid ID 0x00000038.
D/AndroidRuntime: Shutting down VM
E/AndroidRuntime: FATAL EXCEPTION: main
                  Process: net.lyxodius.lyxfinances, PID: 12338
                  java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=0, result=-1, data=Intent { (has extras) }} to activity {net.lyxodius.lyxfinances/net.lyxodius.lyxfinances.TransactionActivity}: android.content.res.Resources$NotFoundException: String resource ID #0x38
                      at android.app.ActivityThread.deliverResults(ActivityThread.java:4360)
                      at android.app.ActivityThread.handleSendResult(ActivityThread.java:4402)
                      at android.app.servertransaction.ActivityResultItem.execute(ActivityResultItem.java:49)
                      at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108)
                      at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68)
                      at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1808)
                      at android.os.Handler.dispatchMessage(Handler.java:106)
                      at android.os.Looper.loop(Looper.java:193)
                      at android.app.ActivityThread.main(ActivityThread.java:6669)
                      at java.lang.reflect.Method.invoke(Native Method)
                      at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
                      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
                   Caused by: android.content.res.Resources$NotFoundException: String resource ID #0x38
                      at android.content.res.Resources.getText(Resources.java:348)
                      at android.widget.TextView.setText(TextView.java:5831)
                      at net.lyxodius.lyxfinances.TransactionActivity.onActivityResult(TransactionActivity.kt:138)
                      at android.app.Activity.dispatchActivityResult(Activity.java:7454)
                      at android.app.ActivityThread.deliverResults(ActivityThread.java:4353)
                      at android.app.ActivityThread.handleSendResult(ActivityThread.java:4402) 
                      at android.app.servertransaction.ActivityResultItem.execute(ActivityResultItem.java:49) 
                      at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108) 
                      at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68) 
                      at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1808) 
                      at android.os.Handler.dispatchMessage(Handler.java:106) 
                      at android.os.Looper.loop(Looper.java:193) 
                      at android.app.ActivityThread.main(ActivityThread.java:6669) 
                      at java.lang.reflect.Method.invoke(Native Method) 
                      at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) 
                      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)

If I just access the EditText to log its text, it works. It only crashes when I try to set the text. I cannot seem to find the source of this problem. Any help would be most welcome!

android
android-activity
kotlin
onactivityresult
activity-finish
asked on Stack Overflow Aug 21, 2018 by Lyxodius

0 Answers

Nobody has answered this question yet.


User contributions licensed under CC BY-SA 3.0