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

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

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

      Android開(kāi)發(fā)之Cursor的使用方法介紹

      百恒網(wǎng)絡(luò) 2017-08-11 10153

      Cursor是個(gè)神奇的表數(shù)據(jù)處理工具,其任務(wù)就是封裝數(shù)據(jù)表中的原始字段值,下面南昌APP制作開(kāi)發(fā)公司小編就帶大家一起了解一下它的具體操作方法。

      從Cursor獲取數(shù)據(jù)的代碼大致如下所示:

      String uuidString = cursor.getString(

      cursor.getColumnIndex(CrimeTable.Cols.UUID));

      String title = cursor.getString(

      cursor.getColumnIndex(CrimeTable.Cols.TITLE));

      long date = cursor.getLong(

      cursor.getColumnIndex(CrimeTable.Cols.DATE));

      int isSolved = cursor.getInt(

      cursor.getColumnIndex(CrimeTable.Cols.SOLVED));

      每從Cursor中取出一條crime記錄,以上代碼都要重復(fù)寫一次。(這還不包括按照這些字段值創(chuàng)建Crime實(shí)例的代碼。)

      顯然,遇到這種情況,我們應(yīng)考慮到前面說(shuō)過(guò)的代碼復(fù)用原則。與其機(jī)械地編寫重復(fù)代碼,

      不如創(chuàng)建可復(fù)用的專用Cursor子類。使用CursorWrapper可快速方便地創(chuàng)建Cursor子類。顧名思義,CursorWrapper能夠封裝一個(gè)個(gè)Cursor的對(duì)象,并允許在其上添加新的有用方法。

      參照以下代碼,在數(shù)據(jù)庫(kù)包中新建CrimeCursorWrapper類。

      創(chuàng)建CrimeCursorWrapper類(CrimeCursorWrapper.java)

      public class CrimeCursorWrapper extends CursorWrapper {

      public CrimeCursorWrapper(Cursor cursor) {

      super(cursor);

      }

      }

      可以看到,以上代碼創(chuàng)建了一個(gè)Cursor封裝類。該類繼承了Cursor類的全部方法。注意,這樣封裝的目的就是為了定制新方法,以方便操作內(nèi)部Cursor。

      參照以下代碼,新增獲取相關(guān)字段值的getCrime()方法。

      新增getCrime()方法(CrimeCursorWrapper.java)

      public class CrimeCursorWrapper extends CursorWrapper {

      public CrimeCursorWrapper(Cursor cursor) {

      super(cursor);

      }

      public Crime getCrime() {

      String uuidString = getString(getColumnIndex(CrimeTable.Cols.UUID));

      String title = getString(getColumnIndex(CrimeTable.Cols.TITLE));

      long date = getLong(getColumnIndex(CrimeTable.Cols.DATE));

      int isSolved = getInt(getColumnIndex(CrimeTable.Cols.SOLVED));

      return null;

      }

      }

      我們需要返回具有UUID的Crime。在Crime.java中新增一個(gè)有此用途的構(gòu)造方法,如下代碼所示。

      新增Crime構(gòu)造方法(Crime.java)

      public Crime() {

      this(UUID.randomUUID());

      mId = UUID.randomUUID();

      mDate = new Date();

      }

      public Crime(UUID id) {

      mId = id;

      mDate = new Date();

      }

      最后,完成getCrime()方法,如下代碼

      新增getCrime()方法(CrimeCursorWrapper.java)

      public Crime getCrime() {

      String uuidString = getString(getColumnIndex(CrimeTable.Cols.UUID));

      String title = getString(getColumnIndex(CrimeTable.Cols.TITLE));

      long date = getLong(getColumnIndex(CrimeTable.Cols.DATE));

      int isSolved = getInt(getColumnIndex(CrimeTable.Cols.SOLVED));

      Crime crime = new Crime(UUID.fromString(uuidString));

      crime.setTitle(title);

      crime.setDate(new Date(date));

      crime.setSolved(isSolved != 0);

      return crime;

      return null;

      }

      (Android Studio會(huì)讓你確定是選擇java.util.Date還是java.sql.Date。不要搞錯(cuò),即便我們現(xiàn)在是在編寫數(shù)據(jù)庫(kù)相關(guān)代碼,也應(yīng)該選java.util.Date。)

      最后,小編要提醒大家的是,在南昌APP開(kāi)發(fā)中,經(jīng)常會(huì)遇到Cursor封裝數(shù)據(jù)表中的原始字段值的情況,所以正確掌握Cursor的用法是很有必要的,如果對(duì)于Cursor的用法大家還有哪些不太明白的地方,可隨時(shí)來(lái)電咨詢百恒網(wǎng)絡(luò),本公司專業(yè)從事APP開(kāi)發(fā)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)等服務(wù)具有十多年的豐富經(jīng)驗(yàn),技術(shù)嫻熟,實(shí)力雄厚。因此,只要您有需要,任何疑難問(wèn)題我們都可以為您解決!


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

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

      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售后服務(wù) 售后服務(wù)
       
      售后服務(wù) 售后服務(wù)
       
      備案專線 備案專線
       
      ×
      91久久精品无码一区二区毛片| 日韩精品成人一区二区三区| 国产大陆亚洲精品国产| 国产精品一久久香蕉国产线看| 亚洲自偷自偷精品| 狠狠色丁香婷婷综合精品视频| 国产精品一区二区久久精品无码| 亚洲欧美国产日韩av野草社区| 国产精品美女网站在线看| 亚洲AV无码成人精品区狼人影院 | 日本精品无码一区二区三区久久久 | 日韩亚洲国产综合高清| 国产精品区一区二区三| 国产美女在线精品免费观看| 99久久精品午夜一区二区| 亚洲精品乱码久久久久久下载| 亚洲国语精品自产拍在线观看 | 精品性高朝久久久久久久| 亚洲熟女精品中文字幕| 国产精品天天影视久久综合网| 69国产成人综合久久精品91| 奇米影视7777久久精品| 久久精品人人爽人人爽快| 久久国产精品99久久久久久老狼| 成人精品视频一区二区三区不卡 | 国产伦精品一区二区三区视频猫咪| 日韩不卡高清视频| 亚洲日韩在线中文字幕综合| 日韩精品福利视频一区二区三区| 无码中文字幕日韩专区视频| 亚洲AV日韩AV永久无码久久| 亚洲日韩一页精品发布| 中文字幕一区日韩在线视频| 日韩电影免费在线观看| 日韩插啊免费视频在线观看| 日韩免费a级毛片无码a∨| 日韩av片无码一区二区不卡电影| 日韩免费毛片视频| 国产成人久久精品麻豆一区| 久久国产午夜精品一区二区三区| 久久人搡人人玩人妻精品首页|