草庐IT

android - strings.xml 资源有多大?

我看到了this帖子说当strings.xml变得太大时应用程序可能会崩溃。我的strings.xml文件现在有800多行,过一会儿会更大。帖子中的答案说使用SQLite数据库可以防止崩溃。但在我的例子中,我有一个SQLite数据库,它从strings.xml中获取条目数据,因为我的应用程序使用不同语言的语言环境。我的问题是,strings.xml可以有多大?如果我达到线路限制,我该怎么做才能防止崩溃? 最佳答案 Resources.get***方法没有任何明确的限制,因此它取决于您设备的内存大小。据我所知,旧版Android有pe

android - 静态最终字符串或 strings.xml

使用strings.xml资源文件与定义字符串常量的接口(interface)的规则是什么。我假设strings.xml资源文件将用于定义用于显示目的的非功能性字符串,例如各种语言的文本、日期呈现格式等。接口(interface)字符串常量将用于定义正则表达式模式、Intentextras变量名传递定义等。 最佳答案 正确。关键是您可以翻译strings.xml中的字符串-任何用英语(或任何其他语言)编写并将向用户公开的内容都应该在strings.xml中,以便您可以翻译它。模式/正则表达式应该是字符串以获得更好的性能,除非这些正则

java - Android 性能 : Strings vs. 枚举与静态最终整数

部分内容之前已经在SO上被问过,但我还没有找到很多确凿的证据和/或决定性的答案。当在Bundle中围绕Android传递信息时,可以通过使用strings、enums或staticfinalints观察性能增加/减少的情况(如果有的话)?举个例子,在我的应用程序中有好几次加载和显示某个fragment。每次加载fragment时,都会将一个Bundle传递给它,其中包含两个参数:正在显示的数据的ID,以及指示如何显示它的模式。我设置了一个自定义状态寻呼机适配器来完成所有的起重工作,但问题的症结在于:其中哪些(如果有的话)会提供任何性能增益/损失:Bundleargs=newBundle

android - 解析 Android xml 文件而不是 iOS .strings

因此,作为移动开发人员,每次我们翻译我们的应用程序时,我们都必须翻译Android和iOS字符串文件。这些文件包含90%的相同字符串,只是文件格式不同。有谁知道是否有一个NSLocalizedString覆盖可以从Android兼容的.xml文件中读取?或者这是否可能?或者,是否有命令行工具可以在两种格式之间进行转换? 最佳答案 这可以满足您的需求,但不是通过命令行。http://localise.biz/free/converter/ios-to-android虽然完整的系统有一个API。如果您注册,您将能够从命令行或通过简单脚本

android - 使用带有 %、$ 和/和格式化的 strings.xml

我将这一行添加到我的strings.xml中,但它不会编译到R中。ListVersion:%1$s\nAuthor:%2$s\nDateCreated:%3$s\nLanguage:%4$s我得到的错误是:错误:以非位置格式指定的多个替换;您是要添加formatted="false"属性吗?错误:意外的结束标记字符串我想问一下如何使这个工作(我稍后会使用string.format)以及“formatted=false”做什么而不是不添加它/将其添加为true。编辑:清理和构建是我得到这个错误的原因。我得到了很多次。但后来我删除了一个空行并清理并重建一切都很好。这真的很不一致,我不知道是

android - setText(getString(R.strings.whatever) 或 setText(R.strings.whatever)?

两者都有效,显然,如果您开始连接,则需要获取字符串以避免显示int。问题:哪个是最“优雅”或“推荐”使用的?谢谢 最佳答案 第二种方法更优雅,因为在内部,TextView(或任何View类)将完成为指定资源获取字符串的工作。让组件做内部工作总是首选。此外,它更短且更易读。关于我谈到的内部结构:如果你看一下Android源代码,你可以看到setText(int)-TextViewisimplementedlikethis的方法:publicfinalvoidsetText(intresid){setText(getContext().

android - 我们可以在 values 文件夹中为 sting strings (Android) 创建 new_strings.xml 和 strings.xml 吗?

我在values文件夹中有两个用于字符串的xml文件:new_strings.xml字符串.xml从strings.xml我可以按如下方式访问字符串:Stringstr=getString(R.string.app_name);如何直接从new_strings.xml访问? 最佳答案 通过与访问strings.xml文件中的值相同的方式。示例:字符串.xml:Firstappname新字符串.xml:Secondapp_name在你的java代码中你可以这样做:R.string.app_name_1R.string.app_name

java - 我怎样才能使这个 rxjava zip 并行运行?

我有一个模拟长时间运行进程的sleep方法。privatevoidsleep(){try{Thread.sleep(2000);}catch(InterruptedExceptione){e.printStackTrace();}}然后我有一个方法返回一个包含参数中给定的2个字符串列表的Observable。它在返回字符串之前调用sleep。privateObservable>getStrings(finalStringstr1,finalStringstr2){returnObservable.fromCallable(newCallable>(){@OverridepublicLi

Android: strings.xml 的默认语言

我要翻译我的应用程序strings.xml文件。strings.xml文件的默认语言是什么?因为现在我需要支持意大利语(我现在编写strings.xml的语言)和英语。我应该将string.xml用于英语并创建res/values-it/意大利语的文件夹,并将“默认”strings.xml翻译成英语? 最佳答案 strings.xml是默认值,如果没有像res/values-it/strings.xml或res/这样的国家特定文件,将使用它值-fr/strings.xml。阅读更多关于LocalizingwithResources的

java - 当我需要一个 String 时,R.string.XXX 从 strings.xml 返回一个 int

这个问题在这里已经有了答案:Android:HowdoIgetstringfromresourcesusingitsname?(18个答案)关闭9年前。这是该线程的延续:Localizingstringsinstrings.xmlgivesNullPointerException此问题是在完成并实现该线程中提供的解决方案后出现的。提供的解决方案适用于这样的实例:loading=(TextView)findViewById(R.id.loading);loading.setText(R.string.loading);这不适用于以下情况:exodus.add(newQuestion(R.