Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/353.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 更改图片时出现android二进制xml异常_Java_Android_Inflate Exception - Fatal编程技术网

Java 更改图片时出现android二进制xml异常

Java 更改图片时出现android二进制xml异常,java,android,inflate-exception,Java,Android,Inflate Exception,我正在开发一个android应用程序,它是关于多语言的故事。在这个应用程序中,我可以从一种语言切换到另一种语言。当然,此应用程序包含多个图像和文本。在阿拉伯语中,一些照片需要翻转,在下面的代码中,我翻转了4幅图像: if (i == 0) { rightImages[i].setImageResource(R.drawable.coverar); } if (i == 1) { rightImages[i].setImageResource(R.drawable.page1ar)

我正在开发一个android应用程序,它是关于多语言的故事。在这个应用程序中,我可以从一种语言切换到另一种语言。当然,此应用程序包含多个图像和文本。在阿拉伯语中,一些照片需要翻转,在下面的代码中,我翻转了4幅图像:

if (i == 0) {
    rightImages[i].setImageResource(R.drawable.coverar);
}
if (i == 1) {
    rightImages[i].setImageResource(R.drawable.page1ar);
}
if (i == 4)// for the arabic flipped pages
{
    rightImages[i].setImageResource(R.drawable.page6_flipped);
    leftImages[i].setImageResource(R.drawable.page7_flipped);

}
if (i == 8)// for the arabic flipped pages
{
    rightImages[i].setImageResource(R.drawable.page14_flipped);
    leftImages[i].setImageResource(R.drawable.page15_flipped);
}

if (i != 4 && i != 8) {
    linLay[i].removeAllViews();
    linLay[i].addView(rightImages[i]);

    linLay[i].addView(leftImages[i]);
}
它崩溃了,它给了我以下错误:

android.view.InflateException : Binary XML file line #26: Error inflating class <unknown>
android.view.InflateException:二进制XML文件行#26:膨胀类时出错
奇怪的是,当我将第6页、第7页、第14页、第15页切换到第6页、第7页、第14页、第15页时,它不会崩溃

请注意,我使用的是平板电脑galaxy note 10.1 2014版,另一方面,它不会在其他平板电脑上崩溃(三星P7500 galaxy Tab 10.1、东芝at7-a、三星galaxy Tab 3 10.1)


有什么帮助吗?

错误消息具有误导性,您可能会认为XML布局文件中存在错误。
虽然有时原因可能是这样的,但最明显的原因是当您的大图像仅放在一个可绘图文件夹中时。

图像的大小很大,这就是为什么您在imageView的充气机布局中遇到充气异常的原因,请尝试将图像变小,然后在imageView中替换set null(它将自动调用GC)。在清单文件的应用程序标记中,添加以下行:

android:Largeheap = "true"

我用的是10"所以我把图像放在drawable-sw700dp文件夹中,并试图将它们放在folde drawable文件夹中,但在所有情况下,无论是否将图像调整到较小的分辨率,应用程序都无法在所有可绘制文件夹中添加相同的图像。至少,Android操作系统可以在没有havi的情况下立即拾取图像ng以相应地调整它们的大小。很抱歉,我尝试了你所说的,但仍然崩溃。如果其中一个资源具有高像素分辨率,则会占用大量内存,从而导致膨胀异常。因此,请基本上验证drawables图像中的像素分辨率只是布局所需的最低分辨率。或者参考此链接-