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

為了賬號安全,請及時綁定郵箱和手機立即綁定

點擊按鈕就會報錯,不知道為什么

@Override

public boolean onTouchEvent(MotionEvent event) {

// TODO Auto-generated method stub

int action = event.getAction();

int x = (int) event.getX();

int y = (int) event.getY();


switch (action) {

case MotionEvent.ACTION_DOWN:

// TODO

changeState(STATE_RECORDING);

break;


case MotionEvent.ACTION_MOVE:

if (isRecording) {

// 根據x,y的坐標,判斷是否想要取消

if (wantToCancle(x, y)) {

changeState(STATE_WANT_TO_CANCEL);

} else {

changeState(STATE_RECORDING);

}

}

break;


case MotionEvent.ACTION_UP:

if (!mReady)?

{

reset();

return super.onTouchEvent(event);

}

if (!isRecording || mTime < 0.6f) {

mDialogManager.tooShort();

mAudioManager.cancel();

mHandler.sendEmptyMessageDelayed(MSG_DIALOG_DIMISS, 1300);

}

else if (mCurState == STATE_RECORDING) {// 正常錄制結束

// release

mDialogManager.dimissDialog();

mAudioManager.release();

// callbackToAct

if (mListener != null) {

mListener.onFinish(mTime,

mAudioManager.getCurrentFilePath());

}

} else if (mCurState == STATE_WANT_TO_CANCEL) {

// cancle

mDialogManager.dimissDialog();

mAudioManager.cancel();

}

reset();

break;

}

return super.onTouchEvent(event);

}


// 恢復狀態及標志位

private void reset() {

// TODO Auto-generated method stub

isRecording = false;

mReady = false;

mTime = 0;

changeState(STATE_NORMAL);

}


private boolean wantToCancle(int x, int y) {

// TODO Auto-generated method stub

if (x < 0 || x > getWidth()) {

return true;

}

if (y < -DISTANCE_Y_CANCLE || y > getHeight() + DISTANCE_Y_CANCLE) {

return true;

}

return false;

}


private void changeState(int state) {

// TODO Auto-generated method stub

if (mCurState != state) {

mCurState = state;

switch (state) {

case STATE_NORMAL:

// setBackgroundResource(R.drawable.btn_)

setText(R.string.str_recoder_normal);

break;

case STATE_RECORDING:

setText(R.string.str_recoder_recording);

if (isRecording) {

mDialogManager.recording();

}

break;

case STATE_WANT_TO_CANCEL:

setText(R.string.str_recoder_want_cancle);

mDialogManager.wantToCancle();

break;

}

}


}


}


正在回答

1 回答

mready聲明時初始化為false試試

0 回復 有任何疑惑可以回復我~
#1

王雪晴 提問者

問題已經解決了,O(∩_∩)O謝謝
2015-09-06 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
Android-仿微信語音聊天
  • 參與學習       43189    人
  • 解答問題       248    個

結合自定義View和API,Dialog管理等實現實現微信語音

進入課程

點擊按鈕就會報錯,不知道為什么

我要回答 關注問題
微信客服

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

幫助反饋 APP下載

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

公眾號

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