最贊回答 / 小寳_昭乂陽
在release()方法里面先判斷一下MediaRecorder是不是為空,不為空的情況下再去stop和release。還有就是你SD卡的讀寫權限有沒添加?
2016-03-11
showRecordingDialog()中應該要判斷mDialog是否為空,為空才new一個實例,否則來回移動會造成new很多個dialog重疊起來無法消除
2016-03-05
最新回答 / 精慕門6263188
按照你給出的布局寫法只會顯示圖片,下面那個TextView是不會顯示的,因為第二個LinearLayout被設置成了match_parent,TextView沒有地方顯示了,你改成wrap_content吧。至于你說的只顯示textview和帶橫的圖片應該不是布局的原因
2016-01-26
采用Handler發送消息的這種方式,感覺應該不太好,不要在自定義View中使用Handler機制
1:Handler與View之間強引用,如榮造成短暫的內存泄露;
2:View本身就提供了 Post(runnable)方法,所以不必采用Handler
對于new Thread這種方式也不太好,可以采用線程池也行, Executors.newFixedThreadPool(1);
也可以采用最新的RxJava,特別方便只要.observeOn(AndroidSchedulers.mainThread())在哪個線程處理結果, .subscribeOn(Schedulers.io())
1:Handler與View之間強引用,如榮造成短暫的內存泄露;
2:View本身就提供了 Post(runnable)方法,所以不必采用Handler
對于new Thread這種方式也不太好,可以采用線程池也行, Executors.newFixedThreadPool(1);
也可以采用最新的RxJava,特別方便只要.observeOn(AndroidSchedulers.mainThread())在哪個線程處理結果, .subscribeOn(Schedulers.io())
2016-01-20