日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Bundle数据传输

發布時間:2025/3/20 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Bundle数据传输 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

重要方法
    clear():清除此Bundle映射中的所有保存的數據。
    clone():克隆當前Bundle
    containsKey(String key):返回指定key的值
    getString(String key):返回指定key的字符
    hasFileDescriptors():指示是否包含任何捆綁打包文件描述符
    isEmpty():如果這個捆綁映射為空,則返回true
    putString(String key, String value):插入一個給定key的字符串值
    readFromParcel(Parcel parcel):讀取這個parcel的內容
    remove(String key):移除指定key的值
    writeToParcel(Parcel parcel, int flags):寫入這個parcel的內容

Intent消息傳遞

?? 1、直接調用putExtra()方法將信息添加到Extra屬性中,然后通過調用getXXXExtra()方法進行獲取即可。這種方式比較簡單、直接,主要用于數據量比較少的情況下。

?? 例如:

Activity1中存數據:

Intent intent = new Intent(Activity1.this, Activity2.class);intent.putExtra("name","jack");startActivity(intent);

?

Activity2中去數據:

Intent myintent=this.getIntent();String Name=myintent.getStringExtra("name");

?

2、先將數據封裝到Bundle包中,Bundle可以看成是一個“鍵/值”映射的哈希表。當數據量比較多時,可以使用Bundle存放數據;然后通過putExtras()方法將Bundle對象添加到Extra屬性中,再通過使用getExtras()方法獲取存放的Bundle對象,最后讀取Bundle包中的數據。這種方式是簡介通過Bundle包對數據先進行封裝,再進行傳遞,實現起來比較繁瑣,因此,主要用于數據量較多的情況。

例如:

Activity1中:

Intent myintent=new Intent();myintent.setClass(Activity1.this,Activity2.class);Bundle mybundle=new Bundle();mybundle.putString("name","jace");mybundle.putInt("age",40);myintent.putExtras(mybundle);Activity1.this.startActivity(myintent);

?

Activity2中:

Intent myintent=this.getIntent();bundle mybundle=myintent.getExtras();String Name=mybundle.getString("name");Int Age=mybundle.getInt("age");

?Bundle在Handler中的數據傳輸

發送消息:

//發送一個消息到Handler發送一個BluetoothChat.MESSAGE_STATE_CHANGE消息到UI線程中//對應BluetoothChat的mHandlermHandler.obtainMessage(BluetoothChat.MESSAGE_STATE_CHANGE, state, -1).sendToTarget();

?或

//發送鏈接的設備名稱到UI Activity界面Message msg = mHandler.obtainMessage(BluetoothChat.MESSAGE_DEVICE_NAME);Bundle bundle = new Bundle();bundle.putString(BluetoothChat.DEVICE_NAME, device.getName());msg.setData(bundle);mHandler.sendMessage(msg);

?或

Message msg = myHandler.obtainMessage();//將msg發送到目標對象,所謂的目標對象,就是生成該msg對象的handler對象Bundle b = new Bundle();b.putInt("age", 20);b.putString("name", "Jhon");msg.setData(b);msg.sendToTarget();

?獲取消息

private final Handler mHandler = new Handler() {@Overridepublic void handleMessage(Message msg) {switch (msg.what) {case MESSAGE_STATE_CHANGE:if(D) Log.i(TAG, "MESSAGE_STATE_CHANGE: " + msg.arg1);switch (msg.arg1) {case BluetoothChatService.STATE_CONNECTED:mTitle.setText(R.string.title_connected_to);//設置狀態為已經連接mTitle.append(mConnectedDeviceName);//添加設備名稱 標題為鏈接的設備名稱mConversationArrayAdapter.clear();//清理聊天記錄break;case BluetoothChatService.STATE_CONNECTING:mTitle.setText(R.string.title_connecting);break;case BluetoothChatService.STATE_LISTEN:case BluetoothChatService.STATE_NONE:mTitle.setText(R.string.title_not_connected);break;}break;case MESSAGE_WRITE:byte[] writeBuf = (byte[]) msg.obj;// construct a string from the buffer//將自己寫入的消息也顯示到會話列表中String writeMessage = new String(writeBuf);mConversationArrayAdapter.add("Me: " + writeMessage);break;case MESSAGE_READ:byte[] readBuf = (byte[]) msg.obj;// construct a string from the valid bytes in the buffer//取得內容并添加到聊天對話列表中String readMessage = new String(readBuf, 0, msg.arg1);mConversationArrayAdapter.add(mConnectedDeviceName+": " + readMessage);break;case MESSAGE_DEVICE_NAME:// save the connected device's name//保存鏈接的設備名稱,并顯示一個toast提示mConnectedDeviceName = msg.getData().getString(DEVICE_NAME);Toast.makeText(getApplicationContext(), "Connected to "+ mConnectedDeviceName, Toast.LENGTH_SHORT).show();break;case MESSAGE_TOAST://處理鏈接(發送)失敗的消息Toast.makeText(getApplicationContext(), msg.getData().getString(TOAST),Toast.LENGTH_SHORT).show();break;}}};

?或

public void handleMessage(Message msg) {Bundle b = msg.getData();int age = b.getInt("age");String name = b.getString("name");System.out.println("age is " + age + ", name is" + name);System.out.println("Handler--->" + Thread.currentThread().getId());System.out.println("handlerMessage");}

?

轉載于:https://www.cnblogs.com/qingblog/archive/2012/06/27/2565497.html

總結

以上是生活随笔為你收集整理的Bundle数据传输的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 自拍 偷拍 欧美 | 亚洲成年人免费观看 | 亚洲成人网络 | 无码任你躁久久久久久久 | 日韩特黄 | 女生扒开尿口让男生桶 | 国产女人精品视频 | 日本久草视频 | 久久精彩免费视频 | 日日干日日干 | 精品中文字幕在线播放 | 国产一区二区三区91 | 伊人精品久久 | 国产在线观看无码免费视频 | 欧美.com| 草草视频在线 | 黄色片在线看 | 国产精品人八做人人女人a级刘 | 全肉的吸乳文 | 国产成人精品一区二区在线小狼 | 国产无码日韩精品 | 韩国电影一区二区三区 | 丰满少妇中文字幕 | 亚洲综合第一 | 男人天堂视频在线观看 | 亚洲视频在线免费播放 | 国产无套内射又大又猛又粗又爽 | 国产又粗又大又爽视频 | 免费亚洲一区 | 国产精品亚洲专区无码牛牛 | 日韩性网站 | 福利片一区二区 | 一区一区三区产品乱码 | 国产偷怕| 一区二区三区在线观看av | 日韩不卡中文字幕 | 国产特级淫片免费看 | 国产精品爽爽久久久久久 | 精品成人一区二区三区 | 欧美另类在线视频 | 国产chinasex麻豆videos | 国产一级做a爰片在线看免费 | 啪网站| 国产成人传媒 | 久久福利国产 | 久久精彩免费视频 | 欧美午夜精品一区 | 我要色综合天天 | 91亚洲精华国产精华精华液 | 国产成人无码一区二区在线观看 | 久热精品在线视频 | 夜夜夜爽 | 国产精品腿扒开做爽爽爽挤奶网站 | 999国产 | 亚洲天堂成人av | 性猛╳xxx乱大交 | 国产精品无码毛片 | 天天艹夜夜 | 欧美一区二区三区激情啪啪 | 丁香婷婷激情 | 福利免费在线观看 | 欧美性在线观看 | 日批视频免费看 | 日韩精品一区二区三区丰满 | 欧美性tv | 无码人妻aⅴ一区二区三区 国产高清一区二区三区四区 | 殴美一级视频 | 三级免费黄录像 | 91精品人妻一区二区三区蜜桃2 | 成人在线观看免费爱爱 | 与亲女洗澡时伦了毛片 | 另类第一页 | 国产懂色av | 日韩中文字幕亚洲精品欧美 | 懂色av一区二区三区四区五区 | 亚洲av成人无码一区二区三区在线观看 | 综合色在线 | 日本免费色 | 成人在线91 | 国精品一区二区三区 | 日韩欧美一区二区三区在线观看 | 天天干天天玩 | 久久香蕉网 | 精品99久久久久成人网站免费 | 国产高清片 | 性欧美bb| 欧美一区二区三区爽爽爽 | 美日韩三级 | 国产日韩欧美精品一区二区 | 青草青草视频 | 久久公开视频 | www.色在线| 极品少妇xxxx精品少妇偷拍 | 香蕉视频在线网址 | 人妖粗暴刺激videos呻吟 | 精品99久久久| 欧美色老头 | 波多野结衣家庭主妇 | 日韩一区二区三区中文字幕 |