十年專注于品牌網站建設 十余年專注于網站建設_小程序開發_APP開發,低調、敢創新、有情懷!
      南昌百恒網絡微信公眾號 掃一掃關注
      小程序
      tel-icon全國服務熱線:400-680-9298,0791-88117053
      掃一掃關注百恒網絡微信公眾號
      掃一掃打開百恒網絡微信小程序

      百恒網絡

      南昌百恒網絡

      Android開發中添加事件監聽器的方法有哪些?

      百恒網絡 2017-07-12 5875

      我想從事南昌APP開發的朋友都知道,Android應用屬于典型的事件驅動類型。不像命令行或腳本程序,事件驅動型應用啟動后,即開始等待行為事件的發生,如用戶單擊某個按鈕。(事件也可以由操作系統或其他應用觸發,但用戶觸發的事件更直觀。)

      應用等待某個特定事件的發生,也可以說應用正在“監聽”特定事件。為響應某個事件而創建的對象叫作監聽器(listener)。監聽器是實現特定監聽器接口的對象,用來監聽某類事件的發生。無需自己編寫,Android SDK已經為各種事件內置開發了很多監聽器接口。當前應用需要監聽用戶的按鈕“單擊”事件,因此監聽器需實現View.OnClickListener接口。

      首先處理TRUE按鈕。在QuizActivity.java文件中,在onCreate(...)方法的變量賦值語句后輸入下列代碼,如下代碼所示。

      為TRUE按鈕設置監聽器(QuizActivity.java)

      ...

      @Override

      protected void onCreate(Bundle savedInstanceState) {

      super.onCreate(savedInstanceState);

      setContentView(R.layout.activity_quiz);

      mTrueButton = (Button) findViewById(R.id.true_button);

      mTrueButton.setOnClickListener(new View.OnClickListener() {

      @Override

      public void onClick(View v) {

      // Does nothing yet, but soon!

      }

      });

      mFalseButton = (Button) findViewById(R.id.false_button);

      }

      }

      (如果遇到View cannot be resolved to a type的錯誤提示,請使用Option+Return或Alt+Enter快捷鍵導入View類。)

      在以上代碼中,我們設置了一個監聽器。當按鈕mTrueButton被點擊后,監聽器會立即通知我們。傳入setOnClickListener(OnClickListener)方法的參數是一個監聽器。該參數是一個實現了OnClickListener接口的對象。

      使用匿名內部類

      傳入SetOnClickListener(OnClickListener)方法的監聽器參數是一個匿名內部類(anonymous inner class)實現,語法看上去稍顯復雜,不過南昌APP制作開發公司小編在這里告訴一個助記小技巧給大家:最外層括號內的全部實現代碼就是傳入SetOnClickListener(OnClickListener)方法內的一個參數。該參數就是新建的一個匿名內部類的實現代碼。

      mTrueButton.setOnClickListener(new View.OnClickListener() {

      @Override

      public void onClick(View v) {

      // Does nothing yet, but soon!

      }

      });

      所有的監聽器都可以以匿名內部類來實現,這樣做有以下兩個好處:

      第一:因為匿名內部類的使用,我們可在同一處實現監聽器方法,代碼更清晰可讀;

      第二:事件監聽器一般只在同一處使用,使用匿名內部類可避免不必要的命名類實現。

      匿名內部類實現了OnClickListener接口,因此它也必須實現該接口唯一的onClick(View)方法。onClick(View) 方法的代碼暫時是一個空結構。雖然實現監聽器接口需要實現onClick(View)方法,但具體如何實現由使用者決定,因此即使是空的實現方法,編譯器也可以編譯通過。

      參照以下代碼為FALSE按鈕設置類似的事件監聽器。

      為FALSE按鈕設置監聽器(QuizActivity.java)

      ...

      mTrueButton.setOnClickListener(new View.OnClickListener() {

      @Override

      public void onClick(View v) {

      // Does nothing yet, but soon!

      }

      });

      mFalseButton = (Button) findViewById(R.id.false_button);

      mFalseButton.setOnClickListener(new View.OnClickListener() {

      @Override

      public void onClick(View v) {

      // Does nothing yet, but soon!

      }

      });

      }

      以上就是南昌APP開發公司-百恒網絡為大家介紹的幾種Android開發中添加事件監聽器的方法,如果還有哪些不懂的地方,可隨時來電和我們聯系,我們一定為您解答疑惑。此外,如有網站建設、微信開發、APP開發、網站推廣等方面的需要,百恒可隨時為您服務,咨詢熱線:400-680-9298(免長途費)


      400-680-9298,0791-88117053
      掃一掃關注百恒網絡微信公眾號
      掃一掃打開百恒網絡小程序

      歡迎您的光顧,我們將竭誠為您服務×

      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售后服務 售后服務
       
      售后服務 售后服務
       
      備案專線 備案專線
       
      ×
      国产成人精品午夜视频'| 国产精品av一区二区三区不卡蜜| 亚洲一区爱区精品无码| 伊人精品视频在线| 日韩不卡手机视频在线观看| 四虎亚洲精品高清在线观看| 亚洲精品视频观看| 无码精品一区二区三区免费视频| 久久99国产精品久久99果冻传媒| 国内精品99亚洲免费高清| 国产精品免费在线播放| 中日韩精品视频在线观看| 日韩毛片人妻久久蜜桃传媒| 国产三级精品三级男人的天堂| 在线观看精品国产福利片87 | 国产在线精品一区二区| 少妇人妻精品一区二区| 一本精品中文字幕在线| 久久夜色精品国产噜噜亚洲a| 久久精品国产四虎| 精品乱码久久久久久久| 久久精品卫校国产小美女| 亚洲精品国产情侣av在线| 久久精品国产亚洲AV麻豆网站| 99久久综合精品免费| 久久棈精品久久久久久噜噜| 久久亚洲精品成人av无码网站| 久久久久无码国产精品一区| 亚洲国产第一站精品蜜芽| 亚洲国产精品成人久久| 亚洲AV永久纯肉无码精品动漫| 日本一区二区三区精品中文字幕| 国产亚洲综合成人91精品| 久草视频在线这里精品| 久久国产精品久久久| 久久精品国产久精国产| 亚洲AV无码久久精品蜜桃| 久9这里精品免费视频| 99久久精品国产一区二区成人| 人人妻人人澡人人爽精品日本| 999这里只有精品|