長按不能顯示diaolog了
有一個問題,長按不能顯示diaolog了,這是因為AudioManager中的prepare中這個方法體都寫在try catch中,導(dǎo)致方法體執(zhí)行不了 最后我的解決方法是只try catch ? mediaRecorder.prepare();mediaRecorder.start(); ? 就解決了。具體為什么我也不知道為什么,求解決!
有一個問題,長按不能顯示diaolog了,這是因為AudioManager中的prepare中這個方法體都寫在try catch中,導(dǎo)致方法體執(zhí)行不了 最后我的解決方法是只try catch ? mediaRecorder.prepare();mediaRecorder.start(); ? 就解決了。具體為什么我也不知道為什么,求解決!
2016-03-23
舉報
2016-03-25
? 這個問題我也碰見了,你的那邊的錯誤提示應(yīng)該是空指針吧? 那么具體是為什么呢? 其實是你上面對于MediaRecorder前面的幾步參數(shù)的設(shè)置出現(xiàn)了錯誤。導(dǎo)致調(diào)用prepare的時候出現(xiàn)錯誤。那么如果你的try和這個老師一樣,擴(kuò)住了全部的代碼的話,那么后面的回調(diào)mListener.wellPrepared();哪里也不能執(zhí)行。你可以試試單獨(dú)吧這個方法拿出try里面,應(yīng)該就能出現(xiàn)對話框了。當(dāng)然,這個并不是解決辦法,因為這樣的話,你的錄音根本就沒有錄進(jìn)去。 我沒有看你的代碼。所以我不知道你的問題在哪里,反正你反復(fù)的看mediaRecorder.prepare();方法之前的設(shè)置mediaRecorder的那些方法,你有沒有寫錯?;蛘吣愕穆窂接袥]有,還有你的權(quán)限添加了沒有。 我那天就是
if (!dir.exists())
? ?dir.mkdirs();
上面判斷我的dir是否存的在時候,我少些了一個感嘆號。當(dāng)時這個視頻比較快。但是我跟著寫的時候,我知道自己感嘆號沒寫,想先跟著寫,到時候再回來加上。結(jié)果后來忘記了。 然后就一直報空指針。還是在dialog那個類里面的錯誤。 找了二十分鐘才找出來,原來wellPrepared根本就沒有運(yùn)行。 所以,耐心點(diǎn)找??隙苷业藉e誤的。