亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

extras.getString() 檢索正??確的值但分配 null

extras.getString() 檢索正??確的值但分配 null

慕桂英4014372 2023-06-08 17:41:33
我有這個,讓我們說“家庭作業”(不知道怎么翻譯,抱歉)主要是為老師編寫簡單的應用程序,這樣他們就可以放成績和科目等。我設置了使用自定義適配器和列表視圖的活動,以顯示學生姓名,每行和每行都有 3 個按鈕,供每個學生設置成績。按鈕是 3,因為學生有 3 次嘗試通過。按下按鈕后,活動將顯示(作為彈出窗口)以從鍵盤輸入成績并將其另存為按下的按鈕的新文本。我還不知道如何將該按鈕文本設置為從該活動傳遞的成績,因為我不能在 onActivityResult 中檢索該字符串。我暫停了:String s = extras.getString(key)為了檢查我用 putExtra() 設置的那個鍵找到了什么值,在我的應用程序進入該步驟后,我看到:s: null extras: Bundle[{key=4}]就在我之前提到的那行代碼之后,4 是我在 EditText 中輸入的值,以傳遞回第一個活動。即使我看到正確的值從第二個活動傳遞到第一個活動,我也無法將它分配給我在 onActivityResult 中創建的新字符串。所以用更少的話來說,過程應該是這樣的:在第一個活動中,我單擊由自定義適配器創建的列表視圖的一行中的按鈕以打開結果活動。在第二個活動中,我在 EditText 中寫了一個數字,在按下按鈕后,我將它作為結果傳遞給 onActivityResult 返回到第一個活動。我得到了額外的正確數字,但在分配給新字符串后,字符串保持為空。1st 我開始這樣的活動:Intent intent = new Intent(Activity1.this, Activity2.class);                startActivityForResult(intent, 1);然后我像這樣從 EditText 傳遞額外的 onClick:EditText editText = findViewById(R.id.edit_text);Intent intent = new Intent();intent.putExtra("key", editText.getText());setResult(RESULT_OK, intent);finish();然后我回到第一個活動來做這個:@Overridepublic void onActivityResult(int requestCode, int resultCode, Intent data) {    super.onActivityResult(requestCode, resultCode, data);    if(requestCode == 1){        if(resultCode == RESULT_OK){            Bundle extras = data.getExtras();            String s = extras.getString("key");  //1st Pasue            Log.e("onactivityresult string", (String) s); //2nd Pause        }    }}第一次暫停:Bundle[mParcelledData.dataSize=40]跨步,第二個暫停:Bundle[{key=4}]s = null所以回到第一個活動,在 onActivityResult 中,我想我可以看到在第二個活動中從 EditText 傳遞了正確的值,但是在分配給新字符串之后,它一直將其設置為 null。我不知道我是否提供了足夠的信息,但如果想要更多信息,請詢問,我會盡力為您提供更多信息。編輯:這有效:intent.putExtra("key", editText.getText().toString());
查看完整描述

1 回答

?
墨色風雨

TA貢獻1853條經驗 獲得超6個贊

EditText.getText()返回 an Editable,而不是直接返回 a String。使用

intent.putExtra("key", editText.getText().toString());

返回結果時。


查看完整回答
反對 回復 2023-06-08
  • 1 回答
  • 0 關注
  • 122 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號