event.getX獲得的x軸坐標是相對于當前控件(0,0)的坐標位置,event.getRowX獲得的x軸坐標是相對于手機屏幕左上頂點為原點坐標
2016-08-14
我不知道有多少人是和我一樣碰到錄音完就直接崩了的。初學者可能不知道怎么回事,我是因為用電腦測的,沒有麥克風,老師選的音頻源是麥克風,所以沒有麥克風的小伙伴就GG了。用手機或者弄個麥克風可以試一下。初學不易。有初學者碰到這個問題頂一下。。
2016-08-07
老師有個地方寫得不太嚴格,
if(!is_recording||mTime<0.6f){
mDialog.too_short();
if(mAudioManage!=null) //應該加上這個判斷,不然有可能mAudioManage未創(chuàng)建完成
{
mAudioManage.cancel();
mHandler.sendEmptyMessageDelayed(MSG_DIALOG_DISMISS, 1300);
}
}
if(!is_recording||mTime<0.6f){
mDialog.too_short();
if(mAudioManage!=null) //應該加上這個判斷,不然有可能mAudioManage未創(chuàng)建完成
{
mAudioManage.cancel();
mHandler.sendEmptyMessageDelayed(MSG_DIALOG_DISMISS, 1300);
}
}
2016-08-06
老師有個地方寫得不太嚴格,
if(!is_recording||mTime<0.6f){
mDialog.too_short();
if(mAudioManage!=null) //應該加上這個判斷,不然有可能mAudioManage未創(chuàng)建完成
{
mAudioManage.cancel();
mHandler.sendEmptyMessageDelayed(MSG_DIALOG_DISMISS, 1300);
}
}
if(!is_recording||mTime<0.6f){
mDialog.too_short();
if(mAudioManage!=null) //應該加上這個判斷,不然有可能mAudioManage未創(chuàng)建完成
{
mAudioManage.cancel();
mHandler.sendEmptyMessageDelayed(MSG_DIALOG_DISMISS, 1300);
}
}
2016-08-06
最新回答 / 年逝丿
雖然不是很懂你的意思,我個人的理解是:首先mReady一開始是false的,是在觸發(fā)了OnLongClick監(jiān)聽器才變成true,那么!mReady為True的時候就是你按下了錄音按鈕,但是提示框Dialog沒有出來的這段時間里面你松開了手指,所以正常來說要調用父類的onTouchEvent方法(就像你按到其他地方一樣什么都不做)。如果不這樣的話程序會執(zhí)行下去,后面判斷狀態(tài)后(mCurStatue == STATUE_RECORDING是True的,看DOWN那里的代碼)所執(zhí)行的mAudioManager...
2016-08-06
最贊回答 / 凌恩BazZ1
public AudioRecorderButton(Context context, AttributeSet attrs) { ? ?super(context, attrs);}public AudioRecorderButton(Context context) { ? ?this(context, null);}
2016-08-04
最新回答 / qq_原來這就是來自北方的漢子_0330
看你想要什么效果, 如果想要像對話那樣,對話的順序都保持的話,那么可以本地db文件去保持,每一條數(shù)據及其順序,如果只是想展示音頻,就可以遍歷你音頻存儲的文件夾(音頻文件可以時間軸來排序),然后展示。
2016-07-28