日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android学习按键事件监听与Command模式

發布時間:2023/12/20 Android 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android学习按键事件监听与Command模式 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Android學習按鍵事件監聽與Command模式 - Dufresne - 博客園

Android學習按鍵事件監聽與Command模式

?

一 Command模式

意圖:

    將一個請求封裝為一個對象,從而使你可用不同的請求對客戶進行參數化;

  對請求排隊或記錄請求日志,以及支持可撤銷的操作。

    將請求被封裝成一個對象,當向某對象提交請求時,使我們可以不用去知道被具體的請求的操作或者請求的接收者,

  實現了動作的請求者對象和動作的執行者對象之間的解耦合。

適用性:

  • 使用Command模式代替callback形式的回調應用;
  • 在不同的時刻指定、排列和執行請求,動態的更改請求;
  • 支持取消操作;
  • 支持修改日志,保存請求執行過程以便恢復操作;
  • Command模式支持一組事務的調用操作。且易于增加擴展新事務;?
  •   (何為事務參考:http://book.51cto.com/art/201202/319377.htm)

    結構:

    ??????

        

    說明:

      Command:命令的封裝者,聲明命令執行的操作接口;

      ConcreteCommand:使命令的具體接收者執行相應的動作;

      Invoke:發出執行該命令的請求,存儲具體命令執行者的抽象父類;

      Receiver:實施與執行具體相關請求的具體操作,由命令對象創建者指定;

    ?

      通過此圖可以到此模式的核心:實現操作對象的調用Invoke與具體實施該操作的對象Receiver之間解耦,

    是通過增加Command,將動作執行委托給Command來執行調用真正的動作執行者。

    ?

    二 Android中OnClickListener

    在View類中:

      public interface OnClickListener {

        void onClick(View v);

      }

      作用:Interface definition for a callback to be invoked when a view is clicked.

        就是一個click事件的回調接口。

      在需要響應click事件的View中,都需要注冊一個相應的ClickListener來監聽click事件發生時被調用。

    看一下面這段代碼:Button控件

      

    public class MyActivity extends Activity {   protected void onCreate(Bundle icicle) {super.onCreate(icicle);setContentView(R.layout.content_layout_id);final Button button = (Button) findViewById(R.id.button_id);//注冊click事件監聽器 button.setOnClickListener(new View.BtnOnClickListener());}   private class BtnOnClickListener extends OnClickListener{     public void onClick(View v) {// Perform action on click}} }

    ?

    看一下相應的這個結構:?

    ?  

        

      這里面View就是Invoke,OnClickListener就是Command,MyActivity就是Receiver。

    執行過程如下:

      

        

    ?

    可以看到這種方式的應用屬于:

      Command模式替換Callback函數形式的回調模型,讓框架結構變得更清晰更靈活。

    轉載于:https://www.cnblogs.com/seven1979/p/4305829.html

    總結

    以上是生活随笔為你收集整理的Android学习按键事件监听与Command模式的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。