Articles of android resources

7“平板电脑的布局文件夹名称

我有两个布局文件夹, layout-sw600dp用于7“平板电脑(1024X600)mdpi,另一个用名称layout-xlarge用于12”平板电脑(1280X800)mdpi。 问题是当我在7“模拟器中运行我的项目时,它会从layout-xlarge文件夹而不是layout-sw600dp中findlayout-sw600dp 。我还尝试了通过更改不同站点中给出的文件夹名称但找不到合适的文件夹的其他解决方案。解决我的问题。请为我提供一个解决此问题的工作方案。提前致谢。

可在字符串资源中绘制

我想显示AlertDialog ,它用字符串和图标一起显示其消息。 是否可以在字符串资源中插入图标​​/图像/ drawable? 有没有办法在AlertDialog显示带有字符串的AlertDialog 。 编辑 如果它不清楚,则drawables需要在字符串内。 比如“点击图标[icon-image],然后点击……”

如何让fgcolor属性在最新的Android版本上运行?

我曾经能够做到这一点: white blue 但现在它不再起作用了。 它似乎是整数解析代码中的一个错误; 请参阅https://code.google.com/p/android/issues/detail?id=58192 问题是,我现在收到客户投诉; 我等不及修复错误了。 有没有人知道解决方法,例如使用color.xml中的命名资源或类似的东西? ETA:我发现fgcolor=”blue”仍然可以使用,但它是错误的蓝色。 某处是否有合法颜色名称列表? 也许我能find一个足够接近的人。 如果颜色是没有高位设置的数字,它也可以工作,如#7f6890a5 ,但当然这太微弱#7f6890a5用; 我需要纯色,而不是半透明。 ETA:浏览源代码显示以下颜色: aqua 0x00FFFF black 0x000000 blue 0x0000FF fuchsia 0xFF00FF green 0x008000 grey 0x808080 lime 0x00FF00 maroon 0x800000 navy 0x000080 olive 0x808000 purple 0x800080 red 0xFF0000 silver 0xC0C0C0 teal 0x008080 white 0xFFFFFF yellow 0xFFFF00 这不能解决我的问题,但也许其他人在这个问题上搜索可能会发现这些信息很有用。

使用引用而不是layout-land(仅xml)设置LinearLayout方向

我有一个用于横向和纵向的布局。 我在/layout和/layout-land文件夹中有它。 唯一的区别是android:orientation 。 我想在/layout只有1 xml,因为它更容易维护。 我想用/values和/values-land代替。 这可能吗? 我现在拥有的是(删除了不必要的代码): VS 我虽然喜欢这样的东西: 作为一个终极解决方案,我还考虑过只为这个LinearLayout创建一个自定义样式(我不喜欢这个解决方案,但如果我不能使用其他选项,则必须使用它)。 注意:我知道可以在java上实现它,但我正在寻找一个仅限xml的解决方案。

资源$ NotFoundException:资源ID无效。 为什么?

我试图在我的dimens.xml文件中添加一个浮点数。 我正在阅读以下SO答案 。 当我尝试解决方案时,我得到了评论中描述的exception。 我试图找出抛出exception的原因。 为了完整性,这里是XML: 15.0 这是爆炸的代码: final float zoom = this.getResources().getDimension(R.dimen.zoom_level); 我跳进了Android源代码,这里是getDimension的方法定义: public float getDimension(int id) throws NotFoundException { synchronized (mTmpValue) { TypedValue value = mTmpValue; getValue(id, value, true); if (value.type == TypedValue.TYPE_DIMENSION) { return TypedValue.complexToDimension(value.data, mMetrics); } throw new NotFoundException( “Resource ID #0x” + Integer.toHexString(id) + ” type #0x” + Integer.toHexString(value.type) + […]

将资源声音文件读入Byte数组

我有cheerapp.wav或cheerapp.mp3或其他一些格式。 InputStream in = context.getResources().openRawResource(R.raw.cheerapp); BufferedInputStream bis = new BufferedInputStream(in, 8000); // Create a DataInputStream to read the audio data from the saved file DataInputStream dis = new DataInputStream(bis); byte[] music = null; music = new byte[??]; int i = 0; // Read the file into the “music” array while (dis.available() > 0) { // […]

格式字符串XXX不是有效的格式字符串,因此不应将其传递给String.format

我有Android应用程序和资源中的这个字符串: Select up to %1$d people! 这是从片段调用的: Integer countMax = 5; //also tried just “int” – nothing changed getResources().getString(R.string.create_group_select_people, countMax); 但是我得到了错误: Format string ‘create_group_select_people’ is not a valid format string so it should not be passed to String.format 我无法理解什么是错的? 当我启动应用程序时 – 它按字面意思显示“选择最多%1美元的人!”

通过字符串获取drawable

我通过json解析图像名称,现在用于显示我必须通过图像名称获取可绘制的id,所以我可以这样做: background.setBackgroundResource(R.drawable.eventimage1); 当我得到图像名称时,格式如下: image_ev1.png

在android中有res / drawable-ldpi吗?

我正在尝试理解http://img.androidcookie.com/android/providing-resources res/drawable-ldpi/ic_launcher.png res/drawable-mdpi/ic_launcher.png res/drawable-mdpi/ic_download.png res/drawable-hdpi/ic_launcher.png res/drawable-hdpi/ic_download.png res/drawable-xhdpi/ic_launcher.png res/drawable-xhdpi/ic_download.png res/drawable-xxhdpi/ic_launcher.png 我是否正确理解这是一个糟糕的配置,好像我的应用程序碰巧在ldpi设备上运行它会崩溃,因为它缺少ic_download drawable? 那么正确的解决方案是什么? 我是否必须将所有可绘制的内容调整为ldpi? 或者我应该将最小的现有版本的EACH drawable添加到drawables /安全吗?

添加values-21文件夹后尝试构建项目并显示错误

:app:mergeDebugResources FAILED C:\ Users \ abc \ AndroidStudioProjects \ MyApplication2 \ app \ src \ main \ res \ values-21错误:错误:资源目录名无效错误:任务’:app:mergeDebugResources’执行失败。 C:\ Users \ abc \ AndroidStudioProjects \ MyApplication2 \ app \ src \ main \ res \ values-21:错误:资源目录名无效