我的家園

          我的家園

          Android Listener偵聽的N種寫法及實現

          Posted on 2012-04-15 16:37 zljpp 閱讀(315) 評論(0)  編輯  收藏

          Android中,View的Listener方法,在是否使用匿名類匿名對象時,就是各種不同的寫法。

          OnClickListener和其他Listener方法一樣,都是View類的抽象接口,重載后就能使用,定義如下:

          // 編譯自View.java (版本 1.5:49.0,無超級位)
          public abstract static interface android.view.View$OnClickListener {
            
            // 方法描述符 #4 (Landroid/view/View;)V
            public abstract void onClick(android.view.View arg0);

            內部類:
              [內部類信息: #1 android/view/View$OnClickListener, 外部類信息: #7 android/view/View
               內部名: #9 OnClickListener, 訪問標志:1545 public abstract static]
          }
          這是一個抽象接口的定義,在使用上可以像類一樣派生。抽象接口interface)和抽象類(class)是和C,C++不一樣的,但在JAVA中兩者比較相似,但卻又是不同的,有關這方面的概率可以從JAVA編程中了解到,C++程序員也許會對這兩者感覺不知所措,不知道該為某些實現創建抽象接口還是抽象類。這可能需要一定的代碼實戰經驗才能更好的把握。
          Listener在使用上有多種寫法,了解這些,對編寫程序好處比較有限,但對閱讀代碼卻又是有用的。大約也可以像孔乙已一樣拿來炫耀吧,但我認為,這對初涉安卓編程的其他程序員來深入了解JAVA或者安卓編程,具有很重要的意義。本例使用了六種方法,由于JAVA語法的靈活性,很可能換種思考,一種新的方法就誕生了,所以本文僅做了解,不要讓他成為你的靈魂鎖鏈,導致限制了你在安卓領域做更深入更廣泛的探索和貢獻。當然如果你發現的新的寫法或者創造什么新的寫法,也可以告訴我,大家一起學習。下面是程序代碼:

          使用eclipse創建安卓工程,假設工作名字使用button4,包使用com.mypack,在窗口中加入6個BUTTON.,使用默認命名,系統自動會命名為button1到button6,再加入一個editText,系統會自動命名為editText1.工程項目包名都可以隨意。


          main.xml


          Button4Activity.java


          文件中最后一個按鈕使用了類callOut,CALLOUT.java代碼如下:


          轉載聲明: 本文轉自  http://blog.csdn.net/blogercn/article/details/7395168



          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 台州市| 洛宁县| 高要市| 黄陵县| 大关县| 长治县| 班戈县| 元江| 温州市| 南溪县| 达州市| 大理市| 班戈县| 康定县| 潼南县| 南漳县| 砀山县| 滁州市| 元氏县| 宜川县| 灵宝市| 山西省| 英德市| 永吉县| 大荔县| 丰县| 永寿县| 尚志市| 马山县| 方山县| 闽清县| 遂宁市| 深泽县| 甘南县| 电白县| 新乡县| 邻水| 临桂县| 九寨沟县| 外汇| 辽源市|