Tag: android resources

如何从Android的不同语言环境中获取string?

所以我想在几个语言环境中获取一个string的值,而不pipe设备/应用程序的当前区域设置如何。 我该怎么做? 基本上我需要的是一个函数getString(int id, String locale)而不是getString(int id) 我怎么能这样做? 谢谢

在Android Studio中导入drawable的快速方法?

在某个Android项目中,您需要在res/drawable目录中导入一些绘图工具(无论是工具栏图标,图像还是UIfunction)。 大多数情况下,您有图像缩放为最常见的限定符( drawable-hdpi , drawable-mdpi , drawable-xdpi , drawable-xxdpi ,…)。 所以我们需要为每个drawable创build三个,四个,甚至五个文件复制/粘贴: external_dir/drawable-mdpi/file.png -> my_package/drawable-mdpi/file.png external_dir/drawable-hdpi/file.png -> my_package/drawable-hdpi/file.png external_dir/drawable-xdpi/file.png -> my_package/drawable-xdpi/file.png external_dir/drawable-xxdpi/file.png -> my_package/drawable-xxdpi/file.png 这是烦人的,如果你不得不导入多个图片。 有没有一个简单快捷的方法来将这四个file.png实例右file.png相应的包文件夹中? 在IDE中实现了一些function? 一些简单的解决方法? 我的工作stream程至今一直是: 从OS文件pipe理器复制/粘贴,从外部目录复制到软件包,然后刷新Android Studio中的资源文件。 这意味着打开每一个合格的子目录,所以四个步骤; 从OS文件pipe理器移动到external_dir ,searchfile.png ,在一个列表中获取四个实例,拖放到Android Studio中,然后为每个图片右键单击导航栏上的Copy , Paste并Paste到相应的软件包目录。 不是更好! 有什么build议? 编辑 – 我当然不是真的要求“build议” – 我想知道是否有办法减less移动到一个(或这样)的数量。

Android Studio无法parsing导入的项目中的R?

我正在尝试新的Android Studio。 我从eclipse导出了一个项目,使用构buildgradle选项。 然后我将它导入到Android Studio中。 gen下的R.java文件有一个小红圈。 而在我的源文件中,无论何处我有一个资源的引用,例如“R.layout.account_list”等,我都会得到“无法parsing符号R”。 我以前从未使用过Intellij。 将不胜感激任何帮助,因为那里显然没有太多关于Android Studio的答案。 谢谢!

创build资源ID的整数数组

我在我的res/drawable文件夹中有一些图像。 比方说img1.png , img2.png和img3.png 。 我目前正在像这样在Java中创build这些图像ID的整数数组 int[] imgIds = {R.drawable.img1, R.drawable.img2, R.drawable.img3}; 相反,是否有可能在res/values文件(比如strings.xml )之一中创build一个整数数组 <integer-array name="img_id_arr"> <item>@drawable/img1</item> <item>@drawable/img2</item> <item>@drawable/img3</item> </integer-array> 然后通过getResources().getIntArray(R.array.img_id_arr)在Java中访问它getResources().getIntArray(R.array.img_id_arr) ?

以编程方式更改从API响应获取的颜色资源的值

比方说,在我的API调用中,我有一个叫做color的参数。 是否可以编辑或修改现有的R.colors.color来从API结果中分配颜色? 举个例子: 我打电话给我的API,它返回green ,现在我想加载我的应用程序与ie(绿色Toolbar ,绿色TextView颜色等),这可能吗? 我的第一个想法是: 在colors.xml创build一个名为demo的项目,然后为其分配一个默认的颜色,然后使用这个demo颜色( Button , TextView等等)。然后我认为可以用API的结果以编程方式改变这个值所以我不需要创build一个SharedPreferences或类似的东西,并避免更多的代码。 @YS对我说 不幸的是,你将不得不手动设置文本或视图的颜色… 🙁 我想如果还有其他方法可以做到这一点,我不知道我的项目将包含多lessActivities ,所以如果有其他方法可以做到这一点,我很高兴听到其他的猜测。 编辑 我正在尝试@Jared Rummler的答案,也许我做错了什么…我创build了一个简单的Json ,我把我的资产我parsingJson ,我把它放在一个GlobalConstant然后我做了一个“简单应用”。 首先我有一个TextView和一个Button ,其中包含“your_special_color”,并返回它我把GlobalConstant int如下所示: case "your_special_color": return GlobalConstant.color; 然后,我尝试的是我的第一个Activity有1个TextView和1个Button正如我之前所说,他们有颜色“your_special_color”,我不想改变它,但我有我的Button的Intent打开其他Activity包含与GlobalConstant.color相同,但不会更改。 我试过这样做(我的第二个活动): public class Main2Activity extends AppCompatActivity { private Res res; @Override public Resources getResources() { if (res == null) { res = new Res(super.getResources()); } return […]

如何从Android上包含的第三方库中删除未使用的资源?

我链接到我的应用程序的第三方库通常包括不被我的应用程序使用的资源文件,因此,最终会膨胀我的APK。 例如,包括Google Play服务库,但不使用loginbuttonfunction; 所有这些图像和布局资源都会在我的最终构build中结束。 由于这些资源被包含在一个编译的库中,我怎样才能从我的构build中删除它们?

Android:html在strings.xml中

我想显示例如这个HTML代码: <body> <p><b>Hello World</b></p> <p>This is a test of the URL <a href="http://www.example.com"> Example</a></p> <p><b>This text is bold</b></p> <p><em>This text is emphasized</em></p> <p><code>This is computer output</code></p> <p>This is<sub> subscript</sub> and <sup>superscript</sup></p> </body> 我想通过在资源strings.xml声明html来将其显示在对话框中。 我该怎么做?

getString在Context或Activity之外

我发现R.string非常棒,可以将代码中的硬编码string保留下来,我还想继续在一个工具类中使用它,该工具类与我的应用程序中的模型一起工作来生成输出。 例如,在这种情况下,我正在从活动外的模型生成一封电子邮件。 是否有可能在Context或Activity之外使用getString ? 我想我可以通过目前的活动,但似乎没有必要。 请纠正我,如果我错了! 编辑:我们可以访问资源, 而不使用Context ?

getResources()。getColor()已被弃用

在我的gradle文件中使用: buildToolsVersion "22.0.1" , targetSdkVersion 22 。 我发现有用的getResources().getColor(R.color.color_name)已被弃用。 我应该用什么来代替?

如何解决:android.app.RemoteServiceException:从包中发布的错误通知*:无法创build图标:StatusBarIcon

我在崩溃日志中看到以下exception: android.app.RemoteServiceException: Bad notification posted from package com.my.package: Couldn't create icon: StatusBarIcon(pkg=com.my.package user=0 id=0x7f02015d level=0 visible=true num=0 ) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1456) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:146) at android.app.ActivityThread.main(ActivityThread.java:5487) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:515) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1283) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1099) at dalvik.system.NativeStart.main(Native Method) 我使用以下方法通过AlarmManager通过PendingIntent从IntentService发布我的通知。 在这里传递的所有值都来自PendingIntent / IntentService中的bundle extras。 /** * Notification * * @param c * @param intent * @param […]