第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

如何使用ArrayList HashMap將listview onItemClick數(shù)據(jù)發(fā)送到另一個(gè)

如何使用ArrayList HashMap將listview onItemClick數(shù)據(jù)發(fā)送到另一個(gè)

森林海 2023-11-10 15:54:51
我對(duì) Android 開(kāi)發(fā)相當(dāng)陌生。我這里有一個(gè)應(yīng)用程序,它應(yīng)該將內(nèi)部的值發(fā)送staffList到另一個(gè)活動(dòng)。ViewStaffActivity.java.get(position).toString()當(dāng)我測(cè)試分配給是否有任何值時(shí)String test,它輸出了我單擊的正確值。    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {                    String test = staffList.get(position).toString();                    Intent intent = new Intent(ViewStaffActivity.this,ProfileCRUD.class);                    intent.putExtra("data",staffList.get(position));                    startActivity(intent);                }intent但是當(dāng)我使用PROFILE_CRUD.java傳遞值時(shí),它name: null hashmap size : 4在這一行返回name.setText(hashMap.get("name"));package com.example.activity.AdminModule;import androidx.appcompat.app.AppCompatActivity;import android.content.Intent;import android.os.Bundle;import android.widget.TextView;import com.example.login1.R;import java.util.HashMap;public class ProfileCRUD extends AppCompatActivity {    private TextView name;    private TextView email;    private TextView user_type;    private TextView created_at;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        name = (TextView)findViewById(R.id.nameTextView);        email = (TextView)findViewById(R.id.emailTextView);        user_type = (TextView)findViewById(R.id.userTypeTextView);        created_at = (TextView)findViewById(R.id.createdAtTextView);        /*Intent intent = getIntent();        HashMap<String, String> hashMap = (HashMap<String, String>)intent.getSerializableExtra("data");        String lat = hashMap.get("Coord_LAT");        String longi = hashMap.get("Coord_LONG");*/任何幫助,將不勝感激!編輯 在正確解決方案的幫助下修復(fù)了它。返回 null 的原因name.setText是因?yàn)槲覜](méi)有setContentView布局文件。
查看完整描述

2 回答

?
叮當(dāng)貓咪

TA貢獻(xiàn)1776條經(jīng)驗(yàn) 獲得超12個(gè)贊

您可以將 Bundle 中的每個(gè)值分開(kāi),而不是在 Intent 中傳遞 HashMap。就像這樣:


Intent intent = new Intent(ViewStaffActivity.this,ProfileCRUD.class);

HashMap<String, String> hashMap = staffList.get(position);

Bundle extras = new Bundle();

extras.putString("NAME", hashmap.get("name"));

extras.putString("EMAIL", hashmap.get("email"));

extras.putString("USER_TYPE", hashmap.get("user_type"));

extras.putString("CREATED_AT", hashmap.get("created_at"));

intent.putExtras(extras);

startActivity(intent);

然后在另一個(gè) Activity 的 onCreate() 中您將使用:


Bundle extras = getIntent().getExtras();

String name = extras.get("NAME");

...


查看完整回答
反對(duì) 回復(fù) 2023-11-10
?
明月笑刀無(wú)情

TA貢獻(xiàn)1828條經(jīng)驗(yàn) 獲得超4個(gè)贊

您可以將 HashMap 轉(zhuǎn)換為 json 并通過(guò) Intent 發(fā)送。使用以下代碼發(fā)送意圖:


String jsonStaff = (new Gson()).toJson(staffList.get(position));

intent.putExtra("jsonStaff", jsonStaff);

并專注于另一項(xiàng)活動(dòng),如下所示:


String jsonStaff = intent.getStringExtra("jsonStaff");

HashMap<String,String > dataStaff = (new Gson()).fromJson(jsonStaff, new HashMap<String,String >().getClass());

就這些。


查看完整回答
反對(duì) 回復(fù) 2023-11-10
  • 2 回答
  • 0 關(guān)注
  • 224 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)