(5)Launcher 细说ItemInfo

本文解析了桌面ItemInfo的概念及其子类,包括小工具、快捷方式和文件夹等,并介绍了它们在数据库中的映射关系。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

要理解ItemInfo,就要先理解桌面有哪几种东西,即有哪几种Item。

  • 小工具:就是AppWidget,时钟小工具,天气小工具,等等。
  • 快捷方式:快速启动应用的图标,一个应用可以有多个重复的快捷方式,workspace和hotseat上的都是快捷方式
  • 文件夹:可以把多个快捷方式放到一块的,用来分类,减少屏幕空间占用。

这些东西都一些共同的,可以抽象出来的东西,有自己的宽度和高度,都有所在的位置和第几等等,而ItemInfo就是抽象出来的东西,打开ItemInfo.java,其中包含的就是这些特征,然而,最关键的是ItemInfo对象和数据库记录是一一对应的。其中有个id的成员,代表的就是数据库中ID。

对于不同的item,ItemInfo也有不同的子类,小工具对应的是LauncherAppWidgetInfo,他增加了小工具的信息(查android文档:AppWidgetProviderInfo);快捷方式对应的是ShortcutInfo,他增加了启动一个Activity所需的Intent信息;文件夹对应的是FolderInfo,他增加了文件夹是否打开的标签,文件夹内图标的信息等等。

ItemInfo的成员有几个值得说说:

  • container:表明图标是放在哪里的,是放在Workspace还是Hotseat,还是文件夹里面的。如果是放在Workspace上的,那么值是LauncherSettings.Favorites.CONTAINER_DESKTOP,如果是放在文件夹里面的那么container的值就是文件夹FolderInfo的id。
  • cellX,cellY:表明所在屏幕的哪个位置,cellY表明第几行,cellX表明第几列。如果是小工具占用多行多列的情况,就记录他左上角的位置。
  • spanX,spanY:宽度和高度,快捷方式和文件夹宽高都是1,小工具的宽高就要看具体情况了。
  • title:标题,显示应用的名字,文件夹的名字,小工具的话就不需要这个属性了。
  • itemType: 数据库里保存的表明这个ItemInfo具体是哪种类型的ItemInfo,启动的时候好生成具体的ItemInfo子类对象。

ItemInfo就这么多了,如果你自己看类的继承关系的话,就知道ItemInfo还有几个子类,比如AppInfo,PendingAddItemInfo,我暂时还没有搞清楚这些类的使用流程,等以后搞清楚了再加上来吧。

再说几个关于数据库的类,方便以后找代码:

  • LauncherProvider: 桌面信息的ContentProvider。
  • LauncherSettings:存了数据库相关的常量,字段名,字段常量等等。
  • DatabaseHelper: LaucherProvider的内部类,继承自SQLiteOpenHelper,数据库表的创建就是在它的onCreate方法里完成的。
"GTA5 err no launcher" 是指在启动GTA5游戏时出现错误提示“没有启动器”。此问题可能有几种解决方案。 首先,您可以尝试重新安装游戏启动器。您可以前往游戏官方网站或Steam平台下载最新版本的启动器,并按照安装步骤进行安装。这有助于修复可能损坏或丢失的启动器文件。 如果重新安装启动器不起作用,您可以尝试运行游戏的兼容性设置。右键单击GTA5的快捷方式或游戏安装目录中的exe文件,选择“属性”,然后切换到“兼容性”选项卡。勾选“以兼容模式运行此程序”的复选框,并选择适用于您操作系统的兼容模式。此外,您还可以尝试勾选“以管理员身份运行此程序”复选框来解决权限问题。 如果上述方法都不起作用,您可以尝试更新或重新安装您的图形驱动程序。过时的或损坏的驱动程序可能会导致游戏启动器错误。您可以前往您显卡制造商的官方网站,在驱动程序下载页面找到适合您显卡型号和操作系统的最新驱动程序,然后按照提示进行安装。 如果问题仍然存在,您可以通过访问游戏官方论坛或与游戏开发商的技术支持团队联系以获取进一步的帮助。他们可能对这个问题有更专业的解决方法。 总之,要解决"GTA5 err no launcher"的问题,您可以尝试重新安装启动器、运行兼容性设置、更新或重新安装图形驱动程序以及寻求专业帮助等方法。希望这些解决方案能帮助您解决问题并顺利启动游戏。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值