当前位置: 首页 > news >正文

婚纱摄影网站模板源码山东网页设计公司

婚纱摄影网站模板源码,山东网页设计公司,在线做头像,成都龙泉建设有限公司网站www.cnblogs.com/mythou/p/3153880.html 最近工作都在修改Launcher#xff0c;所以打算把分析源码和修改源码的过程记录下来#xff0c;最近会写一些关于Launcher的分析和修改博文。因为我是修改4.0.3的Launcher#xff0c;所以后面文章里面的Launcher都是基于Android4.0.…www.cnblogs.com/mythou/p/3153880.html 最近工作都在修改Launcher所以打算把分析源码和修改源码的过程记录下来最近会写一些关于Launcher的分析和修改博文。因为我是修改4.0.3的Launcher所以后面文章里面的Launcher都是基于Android4.0.3的Launcher2修改。Launcher源码比较多而且里面应用了很多设计模式要把它分析清楚要花不少精力网上也有一些零碎的分析文章不过关于修改的文章不多。所以打算写一些分析和修改Launcher结合的文章。 原创博文转载请标明出处http://www.cnblogs.com/mythou/p/3153880.html 今天主要是分析修改Launcher的默认界面如何配置和修改。Launcher修改是最近才开始下面两张图片是最近修改后的结果。因为程序是用于车载导航仪的所以界面和一般的手机界面差别较大。改动也比较大不过对于Launcher的分析修改都是通用的。 这是基于Android4.0.3修改后的Launcher界面因为程序是用在汽车导航上所以图标做了放大操作。删除了一些不需要的东西。 下面针对界面修改的地方做分析。 1、界面默认配置文件 机器刚升级的时候Launcher的界面是默认读取一个xml配置文件完成配置工作。这个配置文件在Launcher目录下 路径是\Launcher\res\xml\default_workspace.xml 。这个XML文件就是刚升级Launcher第一次显示的时候会读取的配置文件。 default_workspace。xml里面可以配置APP快捷方式、Widget、Search搜索栏等。下面就常用的这几个属性进行解析 //Edited by mythou //http://www.cnblogs.com/mythou/快捷方式说明 favorite                                 //程序快捷键属性标签launcher:classNamecom.apical.radio.radioMainActivity  //该应用的类点击图标时需要启动的类launcher:packageNamecom.apical.radio       //该应用的包名launcher:screen1                   //第1屏,0-4屏共5屏launcher:x0                 //图标X位置,左上角第一个为0,向右递增,0-4共5个l0auncher:y0                    //图标Y位置,左上角第一个为0,向下递增,0-2共3个 /Launcher默认是有5个分屏不过这个可以配置。同样每行每列有多少图标也是可以配置的这个在后面会说在哪里可以修改。这里按我修改的是3行5列的界面排布对应上面的效果图。一般配置APP的快捷方式使用上面的属性标签就可以。 //Edited by mythou //http://www.cnblogs.com/mythou///桌面Widget的标签appwidget                                  //插件launcher:classNamede.dnsproject.clock_widget_main.Clock1AppWidgetProvider //该应用的类launcher:packageNamede.dnsproject.clock_widget_main          //该应用的包名launcher:screen1                   //第1屏,0-4屏共5屏launcher:x2                 //图标X位置,左上角第一个为0,向左递增,0-4共5个launcher:y1 //图标Y位置,左上角第一个为0,向下递增,0-2共3个launcher:spanX3 //在x方向上所占格数launcher:spanY2 / //在y方向上所占格数桌面Widget跟桌面快捷方式属性类型不过这里需要注意launcher:spanX和launcher:spanY 这两个属性是说明Widget多大的这个和Widget的最小宽高配置有关。我们在编写桌面Widget的时候需要在XML配置文件里面指定Widget最小的宽和高一般最小宽高计算公式是minWidth 72*占用格数-2 计算出来最小高度也是一样。上面那个模拟时钟是MIUI的时钟minWidth 72*占用格数-2里面的占用格数就是上面launcher:spanX和launcher:spanY配置的数目。针对上面的效果图就是占用了3个横向的格子2个竖向的格子。minWidth应该等于214。 search        //搜索栏 launcher:screen1   //第2屏 launcher:x0 //图标X位置 launcher:y1/ //图标Y位置这个是搜索栏的配置因为我这里不需要用到搜索栏所以把它去掉了如果需要配置可以使用上面的属性标签。 至于文件夹在4.0的Launcher里面是支持的分析加载函数里面可以找到解析文件夹标签的方法。 上面界面默认配置就是通过使用上面的标签修改default_workspace.xml配置的。 下面列出default_workspace支持的标签和属性 //Edited by mythou //http://www.cnblogs.com/mythou///default_workspace.xml中支持的标签有 favorite:应用程序快捷方式。 shortcut:链接如网址本地磁盘路径等。 search:搜索框。 clock:桌面上的钟表Widget//支持的属性有 launcher:title:图标下面的文字目前只支持引用不能直接书写字符串; launcher:icon:图标引用; launcher:uri:链接地址,链接网址用的使用shortcut标签就可以定义一个超链接打开某个网址。 launcher:packageName:应用程序的包名; launcher:className:应用程序的启动类名; launcher:screen:图标所在的屏幕编号; launcher:x:图标在横向排列上的序号; launcher:y:图标在纵向排列上的序号;Launcher里面负责解析default_workspace.xml文件的方法是 LauncherProvider.java里面的loadFavorites方法。 2、LauncherProvider.java的loadFavorites分析 //Edited by mythou //http://www.cnblogs.com/mythou/ //传入default_workspace文件的资源ID和数据库实力把xml里面数据解析保存到Launcher数据库。返回总共解析了多少个标签。 private int loadFavorites(SQLiteDatabase db, int workspaceResourceId) {//......... int type;while (((type parser.next()) ! XmlPullParser.END_TAG ||parser.getDepth() depth) type ! XmlPullParser.END_DOCUMENT) {if (type ! XmlPullParser.START_TAG) {continue;}boolean added false;final String name parser.getName();TypedArray a mContext.obtainStyledAttributes(attrs, R.styleable.Favorite);long container LauncherSettings.Favorites.CONTAINER_DESKTOP;if (a.hasValue(R.styleable.Favorite_container)) {container Long.valueOf(a.getString(R.styleable.Favorite_container));}String screen a.getString(R.styleable.Favorite_screen);String x a.getString(R.styleable.Favorite_x);String y a.getString(R.styleable.Favorite_y);// If we are adding to the hotseat, the screen is used as the position in the// hotseat. This screen cant be at position 0 because AllApps is in the// zeroth position.if (container LauncherSettings.Favorites.CONTAINER_HOTSEAT Integer.valueOf(screen) allAppsButtonRank) {throw new RuntimeException(Invalid screen position for hotseat item);}values.clear();values.put(LauncherSettings.Favorites.CONTAINER, container);values.put(LauncherSettings.Favorites.SCREEN, screen);values.put(LauncherSettings.Favorites.CELLX, x);values.put(LauncherSettings.Favorites.CELLY, y);//解析xml里面的标签从这里可以找到支持的标签类型和相关属性参数。if (TAG_FAVORITE.equals(name)) {long id addAppShortcut(db, values, a, packageManager, intent);added id 0;} else if (TAG_SEARCH.equals(name)) {added addSearchWidget(db, values);} else if (TAG_CLOCK.equals(name)) {added addClockWidget(db, values);} else if (TAG_APPWIDGET.equals(name)) {added addAppWidget(parser, attrs, type, db, values, a, packageManager);} else if (TAG_SHORTCUT.equals(name)) {long id addUriShortcut(db, values, a);added id 0;} else if (TAG_FOLDER.equals(name)) {//.........//folder属性里面的参数要多于2个才能形成文件夹。if (folderItems.size() 2 folderId 0) {// We just delete the folder and any items that made itdeleteId(db, folderId);if (folderItems.size() 0) {deleteId(db, folderItems.get(0));}added false;}}if (added) i;a.recycle();}//......... return i;}其实就是一个分析XML和写入数据库的过程LauncherProvider.java是整个Launcher的数据来源十分重要后面我再具体分析数据加载和适配显示方面的逻辑。 另外还有一个问题补充一下就是有关Android截图问题因为我开发的机器不能使用USB调试而且没有摇动之类的传感器很多手机上截图方法都用不了查了一下可以使用screencap命令来截图具体方法可以参考我另外一篇文章http://www.cnblogs.com/mythou/p/3152627.html 至于图标加入默认背景或者强制转换APP快捷方式图标修改图标大小和行列数以及如何配置默认背景明天再写另外文章说明。
http://www.yutouwan.com/news/383070/

相关文章:

  • 做付费动漫网站百度app官方下载安装到手机
  • 用asp做网站需要准备什么软件网络推广是干嘛的
  • 毕业设计做网站答辩会问什么网站建设所需服务器
  • 上海高登联合建设网站专业设计企业网站
  • 有没有一种app类似网站建设国土分局网站建设方案
  • vue框架做的网站三亚网红路
  • 专业网站设计都选亿企邦花18000去达内培训值吗
  • jsp网站开发广告位wordpress建站上海
  • 小企业网站建设的连接方式自己做视频网站怎么让加载速度变快
  • 嘉兴建设中心小学网站做gif动图的网站犯法吗
  • 网站流量盈利模式免费ppt模板下载软件有哪些
  • 做坑人网站二维码网站备案 如何填
  • 什么是企业营销型网站正规制作网站公司哪家好
  • 怎么做品牌推广网站高端品牌名字怎么取
  • 建站网站公司调查wordpress判断语句
  • 建设协会网站软件开发工具平台
  • 自建网站如何上传视频公司网站建设需要注意的地方
  • 经过开发建设 网站上线了net域名 著名网站
  • 丽水市住房和城乡建设局网站纯代码为WordPress添加
  • 全返利网站建设为什么无法再社保网站上做减员
  • mq网站开发乐清做网站价格
  • 网站建设前途做设计拍摄的网站平台
  • 网站换模板对seo可以做来电名片的网站
  • 做感恩网站的图片网站添加在线支付功能
  • 濮阳网站建设费用建设电子商务网站总结
  • 网站建设属于哪种公司呼伦贝尔旅游包车网站咋做
  • 网站ui设计师招聘做网站做手机app要学什么软件
  • 主流网站开发网页制作素材图片是什么格式
  • 哈尔滨建站模板搭建接推广怎么收费
  • 天津电子商务网站建设公司优化大师优化项目有哪些