青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

xiaoguozi's Blog
Pay it forword - 我并不覺的自豪,我所嘗試的事情都失敗了······習慣原本生活的人不容易改變,就算現狀很糟,他們也很難改變,在過程中,他們還是放棄了······他們一放棄,大家就都是輸家······讓愛傳出去,很困難,也無法預料,人們需要更細心的觀察別人,要隨時注意才能保護別人,因為他們未必知道自己要什么·····
一LauncherApplication->onCreate
  1.//設置最小堆內存4M
  2.//建立應用圖標緩存器
  3.//建立LauncherModel
  4.//注冊Intent.ACTION_PACKAGE_ADDED,Intent.ACTION_PACKAGE_REMOVED,Intent.ACTION_PACKAGE_CHANGED事件監聽器
  LauncherModel作為廣播接收器對上面3中事件進行監聽
  5.//添加對桌面favorites content provider 數據變化監聽器
  二Launcher->onCreate
  1.獲取LauncherApplication LauncherModel mIconCache等LauncherApplication初始化的對象
  2.新建拖放控制器new DragController(this)
  4.//獲取桌面組件管理器,啟動桌面組件host
  5.//從array.hotseats中加載所有的hotseats(熱鍵 如掛機按鈕,google瀏覽器)
  6.從launcher.preferences加載本地設置
  7.//設置壁紙尺寸寬度=display.getWidth()* WALLPAPER_SCREENS_SPAN,高度=display.getHeight()
  8.//加載布局文件
  9.//初始化所有控件
  10.//從Bundle savedInstanceState獲取桌面持久化數據 設置mRestoring = true;
  11.如果mRestoring == false,調用LauncherModel加載桌面項 mModel.startLoader(this, true,isLanguageChange);
  a.LauncherModel.Loader.startLoader() 代碼同步處理
  b.新建LauncherModel.Loader.LoaderThread線程并啟動線程(桌面項加載,詳細見第三步)
  12.注冊Intent.ACTION_CLOSE_SYSTEM_DIALOGS廣播監聽
  三 桌面項加載 LauncherModel.Loader.LoaderThread.run:新線程執行
  1.等待主線程運行結束才開始加載
  2.判斷是否先加載桌面;loadWorkspaceFirst = cbk != null ? (!cbk.isAllAppsVisible()) : true;
  3.loadWorkspaceFirst==true
  a.loadAndBindWorkspace()
  loadWorkspace():從數據庫launcher.db中查詢中所有桌面項構造對應類型的ItemInfo對象存入
  mItems,mAppWidgets,mFolders列表.
  bindWorkspace():
  1.laucher.startBinding(),異步調用,在主線程中handle
  //do no things
  2.laucher.bindItems(),異步調用,在主線程中handle
  1.根據ItemInfo對象創建桌面圖標view對象
  2.獲取item.screen, item.cellX, item.cellY, spanX, spanY,
  調用workspace.addInScreen添加到對應桌面的cell
  1.重新設置桌面圖標view 的layoutparam(類型為cellLayout.layoutparam)
  2.根據item.screen獲取桌面的celllayout對象,也就是workspace下5個用戶桌面中的一個
  3.調用celllayout.addview方法把桌面圖標view對象添加為celllayout的child,也就是為用戶桌面添加一個桌面圖標
  4.桌面圖標view對象添加OnLongClickListener=laucher,由laucher負責監聽桌面圖標view的longclick事件
  5.如果桌面圖標是DropTarget對象,拖放控制器mDragController添加該view到拖放目的地列表
  3.laucher.bindFolders(),異步調用,在主線程中handle
  //launcher.mFolders.putAll(mFolders);
  4.laucher.bindAppWidget(),異步調用,在主線程中handle
  1.獲取LauncherAppWidgetInfo的appWidgetId
  2.獲取AppWidgetProviderInfo appWidgetInfo mAppWidgetManager.getAppWidgetInfo(appWidgetId)
  3.根據appWidgetInfo創建桌面組件的view AppWidgetHostView對象
  4.調用workspace.addInScreen添加到對應桌面的cell
  5.laucher.finishBindingItems(),異步調用,在主線程中handle
  mWorkspaceLoading=false
  b.loadAndBindAllApps();
  如果沒有加載apps或者改變了語言設置
  loadAllAppsByBatch();
  1.//設置package 查詢條件Intent.ACTION_MAIN Intent.CATEGORY_LAUNCHER
  2.//清空mAllAppsList mAllAppsList.clear();
  3.//packageManager 查詢所有應用pakages
  4.分批次mAllAppsList.add 應用pakages
  5.laucher.bindAllApplications()//異步調用
  mAllAppsGrid.setApps(apps)
  6.若分多個批次加載 laucher.bindAppsAdded()//異步調用
  mAllAppsGrid.addApps(apps);
  否則
  onlyBindAllApps();
  1.mAllAppsList.data.clone();
  2.laucher.bindAllApplications()//異步調用
  mAllAppsGrid.setApps(apps)
  4.loadWorkspaceFirst==false
  a.loadAndBindAllApps();
  b.loadAndBindWorkspace();

http://www.cnblogs.com/playing/archive/2011/04/22/2024980.html
posted on 2013-02-18 17:37 小果子 閱讀(809) 評論(0)  編輯 收藏 引用 所屬分類: 學習筆記Android & Ios
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            99国内精品久久| 亚洲欧美国产一区二区三区| 久久免费高清视频| 国内精品视频在线观看| 久久久在线视频| 久久久夜精品| 亚洲精品国产视频| 日韩亚洲欧美成人| 国产精品老女人精品视频| 午夜精品久久久久| 久久国产免费看| 影音先锋国产精品| 91久久久亚洲精品| 欧美日韩一区综合| 欧美在线免费| 玖玖玖免费嫩草在线影院一区| 亚洲国产一二三| 在线亚洲欧美视频| 狠狠久久五月精品中文字幕| 嫩草影视亚洲| 欧美日韩免费一区二区三区| 欧美一区1区三区3区公司| 久久欧美肥婆一二区| 日韩视频欧美视频| 亚洲欧美国内爽妇网| 亚洲国产欧美在线| 亚洲午夜羞羞片| 亚洲国产欧洲综合997久久| 一区二区动漫| 在线视频观看日韩| 一本一本久久| 亚洲激情综合| 先锋影音久久久| 亚洲精品亚洲人成人网| 午夜在线播放视频欧美| 亚洲精品综合久久中文字幕| 欧美一区二区在线| 亚洲伊人一本大道中文字幕| 久久久久网站| 久久不射网站| 欧美日韩精品欧美日韩精品一| 久久理论片午夜琪琪电影网| 欧美午夜精品久久久久久人妖| 米奇777超碰欧美日韩亚洲| 国产精品日韩电影| 亚洲日本一区二区| 亚洲激情视频网| 欧美亚洲尤物久久| 亚洲欧美久久久久一区二区三区| 欧美a级理论片| 免费成人性网站| 国产一区二区三区电影在线观看| 亚洲图片自拍偷拍| 9色porny自拍视频一区二区| 狂野欧美激情性xxxx欧美| 久久国产精品一区二区三区| 国产精品成人国产乱一区| 亚洲精品乱码久久久久久蜜桃91 | 亚洲一区二区在线免费观看视频 | 国产精品久久久久毛片大屁完整版 | 国产精品久久综合| 亚洲国产欧美久久| 亚洲电影一级黄| 久久电影一区| 久久久亚洲欧洲日产国码αv| 国产精品腿扒开做爽爽爽挤奶网站 | 在线日韩欧美视频| 久久漫画官网| 欧美国产精品v| 亚洲国产婷婷| 欧美成人在线免费视频| 亚洲第一区色| 夜色激情一区二区| 欧美日韩亚洲三区| 在线一区二区三区四区| 亚洲欧美日韩精品在线| 国产精品久久77777| 亚洲专区一区二区三区| 性欧美xxxx视频在线观看| 国产欧美日韩在线视频| 香蕉久久久久久久av网站| 久久国产综合精品| 永久域名在线精品| 欧美成人a∨高清免费观看| 亚洲国产合集| 亚洲一区二区视频在线| 国产精品免费网站在线观看| 亚洲欧美国产77777| 久久综合电影一区| 亚洲日本成人| 欧美日韩免费一区| 亚洲综合色在线| 免费亚洲电影在线| 一区二区成人精品| 国产深夜精品| 欧美暴力喷水在线| 亚洲午夜视频| 欧美激情成人在线视频| 一区二区三区免费网站| 国产欧美日韩精品丝袜高跟鞋 | 欧美制服丝袜第一页| 欧美成人国产一区二区| 亚洲作爱视频| 好吊色欧美一区二区三区四区| 欧美v亚洲v综合ⅴ国产v| 亚洲午夜久久久| 欧美va亚洲va国产综合| 亚洲综合色视频| 亚洲第一区色| 国产欧美精品一区二区色综合| 老鸭窝亚洲一区二区三区| 在线一区观看| 欧美国产日韩免费| 久久国产99| 一区二区三区四区在线| 伊人久久成人| 国产欧美日韩中文字幕在线| 欧美成人在线免费观看| 久久成人免费电影| 一区二区三区国产在线观看| 亚洲成人在线视频网站| 久久国产精品久久久久久电车| 日韩视频在线免费| 一区免费观看| 国产一区在线视频| 国产精品久久久久999| 欧美大片在线看免费观看| 欧美一区二区性| 亚洲资源在线观看| 99在线精品观看| 亚洲激情网址| 亚洲成色精品| 免费看av成人| 久久夜色精品国产欧美乱| 欧美影院成人| 欧美在线播放一区| 午夜视频精品| 亚洲欧美色一区| 亚洲小说春色综合另类电影| 亚洲伦理在线| 日韩视频不卡| 日韩亚洲综合在线| 亚洲美女网站| 99在线精品视频| 99视频+国产日韩欧美| 日韩视频国产视频| 亚洲毛片在线看| 日韩一区二区免费高清| 亚洲麻豆一区| 一本一道久久综合狠狠老精东影业 | 国产日韩欧美一区二区三区四区 | 久久久99爱| 久久久久久有精品国产| 久久精品夜色噜噜亚洲a∨| 久久久www成人免费无遮挡大片| 欧美一区二区三区在线视频| 久久er99精品| 免费成人av在线看| 欧美久久婷婷综合色| 欧美日韩理论| 国产精品一区免费观看| 国产欧美综合在线| 尤物视频一区二区| 亚洲三级视频| 亚洲欧美视频在线观看视频| 欧美一区二区精品久久911| 久久九九99| 亚洲高清色综合| 一区二区国产日产| 午夜精品久久久久久久白皮肤 | 老妇喷水一区二区三区| 欧美国产亚洲视频| 国产精品国色综合久久| 国产亚洲视频在线| 亚洲国产人成综合网站| 亚洲一区二区三区精品在线| 欧美一区二区三区视频免费| 麻豆av一区二区三区久久| 亚洲国产欧美不卡在线观看| 亚洲性视频网站| 裸体女人亚洲精品一区| 欧美日韩中文精品| 激情小说另类小说亚洲欧美| 亚洲欧洲午夜| 欧美专区在线观看一区| 亚洲国产第一| 小黄鸭视频精品导航| 欧美sm视频| 国产麻豆91精品| 亚洲国产日韩一区二区| 午夜精品区一区二区三| 亚洲福利在线视频| 亚洲影视在线播放| 欧美激情一二三区| 黄色一区二区在线| 亚洲欧美日韩成人高清在线一区| 蜜臀久久久99精品久久久久久| 一区二区三区久久网| 欧美 日韩 国产在线| 国产一区二区三区av电影|