XMPP 扎金花各种网络传送之音频发送
XMPP各種網(wǎng)絡(luò)傳送開發(fā),一個好的扎金花游戲需要高強(qiáng)度的網(wǎng)絡(luò)傳輸支持,音頻的發(fā)送,與之前圖片的發(fā)送,有一定的相似,也有一些不同。音頻發(fā)送的核心思想,是按下按鈕開始錄音,松開手結(jié)束錄音并且保存錄音。因此需要處理按鈕的按下和抬手兩個監(jiān)聽方法。但是其中有一個蘋果的bug: 自定義的按鈕無法同時處理TouchUpInSide 和 TouchDown。 就是按下按鈕不松手是一個打印,手一松開一個打印。這是不行的,都是手一松兩個同時打印。(除非按鈕特別大,一般小按鈕無法同時監(jiān)聽這兩個點擊事件)。但是蘋果自帶的系統(tǒng)按鈕卻可以,不管多小,比如buttonWithTypeAdd(小加號按鈕)都可以,因此設(shè)置點擊聲音按鈕之后下面出現(xiàn)一個inputView,上面是可以同時處理這兩個時間的按鈕。通過這個按鈕來控制開始錄音和結(jié)束錄音。保存之后,也是轉(zhuǎn)化成data二進(jìn)制文件,然后再通過base64編碼。然后加入子節(jié)點,和圖片類似發(fā)過去。接收的時候,也是取出節(jié)點內(nèi)的stringValue解碼。但是顯示在tableview的cell中的是聲音的時間,點擊這個cell觸發(fā)聲音播放時間。從而播放音頻。播放時cell內(nèi)部的某些樣式變化也是可以控制的。
先把界面中的聲音按鈕的點擊事件連線。
- (IBAction)setRecord {
??? // 切換焦點,彈出錄音按鈕
??? [self.recordText becomeFirstResponder];
}
其實就是自己隨便寫了個textField 點擊時就讓他獲取焦點,然后下面彈出一個輸入框上面有按鈕
總結(jié)
以上是生活随笔為你收集整理的XMPP 扎金花各种网络传送之音频发送的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 今天研究 Client本来是关联的Exp
- 下一篇: WZ132发现打CXY要么是程序员,要么