十年專注于品牌網(wǎng)站建設(shè) 十余年專注于網(wǎng)站建設(shè)_小程序開發(fā)_APP開發(fā),低調(diào)、敢創(chuàng)新、有情懷!
      南昌百恒網(wǎng)絡(luò)微信公眾號 掃一掃關(guān)注
      小程序
      tel-icon全國服務(wù)熱線:400-680-9298,0791-88117053
      掃一掃關(guān)注百恒網(wǎng)絡(luò)微信公眾號
      掃一掃打開百恒網(wǎng)絡(luò)微信小程序

      百恒網(wǎng)絡(luò)

      南昌百恒網(wǎng)絡(luò)

      Android開發(fā)之創(chuàng)建并響應(yīng)菜單事件

      百恒網(wǎng)絡(luò) 2017-07-19 5044

      為響應(yīng)用戶點(diǎn)擊New Crime菜單項(xiàng),需實(shí)現(xiàn)新方法以添加新的Crime到crime列表。那么改如何操作呢?下面請看南昌網(wǎng)絡(luò)公司小編為您詳細(xì)介紹:

      在CrimeLab.java中,新增addCrime()方法,實(shí)現(xiàn)添加Crime到列表,如下代碼所示。

      添加新的crime(CrimeLab.java)

      ...

      public void addCrime(Crime c) {

      mCrimes.add(c);

      }

      public List getCrimes() {

      return mCrimes;

      }

      ...

      既然可以手動(dòng)添加crime記錄,也就沒必要再讓程序自動(dòng)生成100條crime記錄了。在CrimeLab.java中,刪除生成隨機(jī)crime記錄的代碼,如下圖代碼所示。

      代碼清單: 再見,隨機(jī)crime記錄!(CrimeLab.java)

      在CrimeLab.java中,刪除生成隨機(jī)crime記錄的代碼

      用戶點(diǎn)擊菜單中的菜單項(xiàng)時(shí),fragment會(huì)收到onOptionsItemSelected(MenuItem)方法的回調(diào)請求。傳入該方法的參數(shù)是一個(gè)描述用戶選擇的MenuItem實(shí)例。

      當(dāng)前菜單僅有一個(gè)菜單項(xiàng),但菜單通常包含多個(gè)菜單項(xiàng)。通過檢查菜單項(xiàng)ID,可確定被選中的是哪個(gè)菜單項(xiàng),然后作出相應(yīng)的響應(yīng)。這個(gè)ID實(shí)際就是在菜單定義文件中賦予菜單項(xiàng)的資源ID。

      在CrimeListFragment.java中,實(shí)現(xiàn)onOptionsItemSelected(MenuItem)方法響應(yīng)菜單項(xiàng)的選擇事件。在該方法中, 創(chuàng)建新的Crime 實(shí)例, 并將其添加到CrimeLab 中, 然后啟動(dòng)CrimePagerActivity實(shí)例,讓用戶可以編輯新創(chuàng)建的Crime記錄,如下代碼所示。

      響應(yīng)菜單項(xiàng)選擇事件(CrimeListFragment.java)

      @Override

      public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {

      super.onCreateOptionsMenu(menu, inflater);

      inflater.inflate(R.menu.fragment_crime_list, menu);

      }

      @Override

      public boolean onOptionsItemSelected(MenuItem item) {

      switch (item.getItemId()) {

      case R.id.menu_item_new_crime:

      Crime crime = new Crime();

      CrimeLab.get(getActivity()).addCrime(crime);

      Intent intent = CrimePagerActivity

      .newIntent(getActivity(), crime.getId());

      startActivity(intent);

      return true;

      default:

      return super.onOptionsItemSelected(item);

      }

      }

      注意,onOptionsItemSelected(MenuItem)方法返回的是布爾值。一旦完成菜單項(xiàng)事件處理,應(yīng)返回true值以表明全部任務(wù)已完成。另外,默認(rèn)case表達(dá)式中,如果菜單項(xiàng)ID不存在,超類版本方法會(huì)被調(diào)用。

      運(yùn)行CriminalIntent應(yīng)用,嘗試使用菜單,添加一些crime記錄并進(jìn)行編輯。

      以上就是南昌網(wǎng)絡(luò)公司小編為大家介紹的關(guān)于Android開發(fā)中創(chuàng)建并響應(yīng)菜單的方法,如果還有哪些不太明白的地方,可隨時(shí)來電和我們聯(lián)系,本公司專業(yè)為您解答。此外,想了解更多關(guān)于南昌網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)等方面的資訊,歡迎關(guān)注本公司官網(wǎng)動(dòng)態(tài)。


      400-680-9298,0791-88117053
      掃一掃關(guān)注百恒網(wǎng)絡(luò)微信公眾號
      掃一掃打開百恒網(wǎng)絡(luò)小程序

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

      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售后服務(wù) 售后服務(wù)
       
      售后服務(wù) 售后服務(wù)
       
      備案專線 備案專線
       
      ×
      国内精品免费在线观看 | 久久精品国产免费观看| 99久久国产综合精品麻豆| 高清在线亚洲精品国产二区| 四虎永久精品免费观看| 日韩精品国产丝袜| 午夜福利麻豆国产精品| 2020国产成人久久精品| 亚洲精品亚洲人成在线麻豆| 久久精品94精品久久精品| 一本一本久久aa综合精品| 久久精品国产99国产精品 | 日韩欧精品无码视频无删节 | 99久久这里只精品国产免费| 精品日韩99亚洲的在线发布| 久久久久99精品成人片试看| 久久久久久久久毛片精品| 久久久久久久99精品免费观看| 青青热久久久久综合精品| 国产亚洲精品a在线观看| 精品久久久无码中文字幕| 国产精品午夜国产小视频| 国产999精品久久久久久| 亚洲一级Av无码毛片久久精品| 九九精品国产99精品| 九九九精品视频免费| 午夜肉伦伦影院久久精品免费看国产一区二区三区 | 日韩在线中文字幕制服丝袜| 国产成人精品视频午夜| 国产剧情精品在线| 亚洲免费日韩无码系列 | 日韩在线播放全免费| 日韩精品区一区二区三VR| 久久久久无码精品亚洲日韩| 亚洲国产日韩一区高清在线| 日韩精品视频一区二区三区| 精品96在线观看影院| 亚洲国产精品碰碰| 日韩精品无码久久一区二区三| 午夜国产精品无套| 国产网红主播无码精品|