<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                * EventBus是一款針對Android優化的發布/訂閱事件總線。以觀察者模式實現,用于簡化程序的組件、線程通信,可以輕易切換線程、開辟線程。在APP的項目中,大量使用了EventBus進行Android組件間的數據傳遞。 以識別動畫刷新事件為例: 1. 發送事件 ~~~ //開始識別時,發送RecordUpdateEvent.RECORDING EventBus.getDefault().post(new RecordUpdateEvent(RecordUpdateEvent.RECORDING)); //剛結束說話,訊飛仍未返回識別結果時,發送RecordUpdateEvent.RECOGNIZING EventBus.getDefault().post(new RecordUpdateEvent(RecordUpdateEvent.RECOGNIZING)); //識別結束,發送RECORD_IDLE_AFTER_RECOGNIZED EventBus.getDefault().post(new RecordUpdateEvent(RecordUpdateEvent.RECORD_IDLE_AFTER_RECOGNIZED)); ~~~ 2. 接收事件(此處是在VoiceInputFragment接收,還有其他地方接收該事件) ~~~ //處理識別動畫刷新事件 public void onRecordUpdate(RecordUpdateEvent e){ switch (e.getState()) { case RecordUpdateEvent.RECORD_IDLE: case RecordUpdateEvent.RECORD_IDLE_AFTER_RECOGNIZED: voiceBt.setRecordIdleState(); mFbviTextInputBt.setVisibility(View.VISIBLE); mFvbiManualBt.setVisibility(View.VISIBLE); break; case RecordUpdateEvent.RECORDING: ((MainActivity) getActivity()).closeSlidingMenu(); ((MainActivity) getActivity()).scroll2LastPosition(); //判斷是否展示話筒的波紋效果 boolean isShow = AppConfig.dPreferences.getBoolean("wave_show", true); if (isShow) { mFbviTextInputBt.setVisibility(View.GONE); mFvbiManualBt.setVisibility(View.GONE); voiceBt.setRecordStartState(); } break; case RecordUpdateEvent.RECOGNIZING: voiceBt.setRecognizeCompletedState(); break; } } ~~~ * 由于EventBus強解耦的特性,對數據的發送和接收都較難維護管理。因此在項目中,需要使用EventBus傳遞的數據都定義一個事件對象來封裝,并且將所有事件都放在同一包下。項目中已定義的事件如下圖所示: ![](https://box.kancloud.cn/ae7e697a9430e6efa665b41a3f1256fb_335x782.png)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看