一个字 第2页
-
[置顶]甘特图怎么制作更方便?甘特图制作方法
本文关于甘特图怎么制作更方便?甘特图制作方法。其实现在制作甘特图的方式有多种多样,可以直接使用表格的方式来制作,或者是使用一些线上工具来制作甘特图都是可以的。今天针对于甘特图制作方式给大家详细的分享一...
-
[置顶]okr的实施标准步骤是什么?成功实施落地OKR的要点
本文关于okr的实施标准步骤是什么?成功实施落地OKR的要点。其实有关于Okr工作法,相信很多人都有一定的了解。OKR定义为一个重要的思维框架和一个发展中的学科,旨在确保员工一起工作,并专注于做出可衡...
-
Python Collections模块
在内置数据类型(dict、list、set、tuple)的基础上,collections模块还提供了几个额外的数据类型:Counter、deque、defaultdict、namedtuple和Ord...
-
EXCLE表格中数字升序如何设置?
今天我们就一起来说一下EXCLE表格中数字升序如何设置?下面是小编为大家精心整理的关于EXCLE表格中数字升序如何设置?希望能够帮助到你们。 方法/步骤 1在电脑上找到EXCLE快捷图标,如果没有在程...
-
Excel表格自动排序的方法
相信大家知道,Excel表格是常用的办公软件之一,掌握Excel表格的技巧,可以帮助自己更好地工作,知道Excel表格怎么自动排序吗?下面是小编给大家带来的Excel表格自动排序的方法_Excel表格...
-
这听起来多余,但对使用备用资源可能很有帮助。阅读更多关于创建别名资源的内容。
利用样式属性资源,您可以在当前应用的主题背景中引用某个属性的值。借助引用样式属性,在自定义界面元素的外观时,您无需采用提供硬编码值这种方式,您可以通过为其设置样式,以匹配当前主题背景提供的标准变体来达成目的。引用样式属性的实质作用是,“在当前主题背景中使用此属性定义的样式”。
如要引用样式属性,名称语法几乎与普通资源格式完全相同,区别在于您需将 at 符号 (@) 改为问号 (?),并且资源类型部分为可选项。例如:
?[
:][ /] 例如,以下代码展示了如何通过引用属性来设置文本颜色设,使其匹配系统主题背景的“基本”文本颜色:
在以上代码中,android:textColor 属性指定当前主题背景中某个样式属性的名称。Android 现在会将应用于 android:textColorSecondary 样式属性的值用作此微件中 android:textColor 的值。由于系统资源工具知道此环境中肯定存在某个属性资源,因此您无需显式声明类型(类型应为 ?android:attr/textColorSecondary)— 您可以将 attr 类型排除在外。
访问原始文件
尽管并不常见,但您的确有可能需要访问原始文件和目录。如果确有需要,则将文件保存在 res/ 中并没有用,因为从 res/ 读取资源的唯一方法是使用资源 ID。您可以改为将资源保存在 assets/ 目录中。
保存在 assets/ 目录中的文件没有资源 ID,因此您无法通过 R 类或在 XML 资源中引用它们。您可以改为采用类似普通文件系统的方式查询 assets/ 目录中的文件,并利用 AssetManager 读取原始数据。
不过,如果您只需要读取原始数据(例如视频文件或音频文件)的能力,则可将文件保存在 res/raw/ 目录中,并利用 openRawResource() 读取字节流。
访问平台资源
Android 包含许多标准资源,例如样式、主题背景和布局。如要访问这些资源,请通过 android 包名称限定您的资源引用。例如,您可以将 Android 提供的布局资源用于 ListAdapter 中的列表项:
listAdapter = ArrayAdapter(this, android.R.layout.simple_list_item_1, myarray)
在上例中,simple_list_item_1 是平台为 ListView 中的项目所定义的布局资源。您可以使用该资源,而不必自行创建列表项布局。
利用资源提供最佳设备兼容性
为使应用支持多种设备配置,请务必为应用使用的每种资源类型提供默认资源,这一点非常重要。
例如,如果应用支持多种语言,请始终包含不带语言和区域限定符的 values/ 目录(用于保存字符串)。相反,如果您将所有字符串文件放入带有语言和区域限定符的目录中,且设备语言已设为您的字符串所不支持的语言,则应用在该设备上运行时将崩溃。但是,只要提供默认 values/ 资源,应用便会正常运行(即使用户不理解该语言,但总比崩溃要好)。
同样,如果您根据屏幕方向提供不同的布局资源,则应选择一个方向作为默认方向。例如,不要在 layout-land/ 和 layout-port/ 中分别提供横向和纵向的布局资源,而是保留其一作为默认设置,例如:layout/ 用于横向,layout-port/ 用于纵向。
提供默认资源至关重要,这不仅是因为应用可能会在超出预期的配置上运行,也因为新版 Android 有时会添加旧版本不支持的配置限定符。如果您使用新的资源限定符,但希望维持对旧版 Android 的代码兼容性,则当旧版 Android 运行应用时,应用将在无默认资源的情况下崩溃,因为此时它无法使用以新限定符命名的资源。例如,如果您将 minSdkVersion 设置为 4,并使用夜间模式(night 或 notnight,API 级别 8 中的新增配置)限定所有可绘制对象资源,则 API 级别 4 设备无法访问可绘制对象资源,而且会崩溃。在此情况下,您可能希望 notnight 成为默认资源,所以您应排除该限定符,使可绘制对象资源位于 drawable/ 或 drawable-night/ 中。
因此,为提供最佳的设备兼容性,请始终为应用正确运行所需的资源提供默认资源。然后,请使用配置限定符为特定的设备配置创建备用资源。
这条规则有一个例外:如果应用的 minSdkVersion 为 4 或更高版本,则在提供带屏幕密度限定符的备用可绘制对象资源时,您不需要默认可绘制对象资源。即使没有默认可绘制对象资源,Android 也可从备用屏幕密度中找到最佳匹配项并根据需要缩放位图。但是,为了在所有类型的设备上提供最佳体验,您应为所有三种类型的密度提供备用可绘制对象。
Android 如何查找最佳匹配资源
android应用资源概览
应用资源概览 资源是指代码使用的附加文件和静态内容,例如位图、布局定义、界面字符串、动画说明等。 您应始终外部化应用资源(例如图像和代码中的字符串),以便单独对其进行维护。此外,您还应为特定设备配置提...
-
Go入门很简单:解析 XML文件的 Unmarshal 函数
解析 XML 文件的 Unmarshal 函数 解析 XML 到 struct 的规则 总结 解析 XML 文件的 Unmarshal 函数 解析 XML 到 struct 的规则 总结 解析 XML...
-
【收藏】MyBatis 常用语法汇总
一、MyBatis介绍 MyBatis 是支持定制化 SQL、存储过程以及高级映射的优秀的持久层框架。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以...
-
Redis实现附近的人
各种社交软件里面都有附件的人的需求,在该应用中,我们查询附近 1 公里的食客,同时只需查询出 20 个即可。 解决基于地理位置的搜索,很多数据库品牌都支持:MySQL、MongoDB、Redis 等都...
-
深入浅出cache写策略
随着计算机行业的飞速发展,CPU的速度和内存的大小都发生了翻天覆地的变化,在处理器速度不断增加的形势下,处理器处理数据的能力也得到大大提升。数据是存储在内存中的,内存吞吐率虽然得到很大的提升,但是相对...
-
项目里文件名永远不要用中文!永远不要!
最近碰到了一个问题,项目中很多文件都是接手过来的中文命名的一些素材,结果在部署的时候文件名全都乱码了,导致项目无法正常运行。 类似这样子,什么都识别不了: 后来请教了一位大佬怎么解决文件名乱码的问题,...
-
python基础例题
python基础 hello,大家好,我是Dream,今天给大家整理了一些Python中基础的例题,帮助大家及时复习和巩固知识,多学多练,相信你一定可以把python学好的! python基础: #将...