1

私は 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>

それについての奇妙なことは、page6_flipped、page7_flipped、page14_flipped、page15_flipped を page6、page7、page14、page15 に変更してもクラッシュしないことです。

私はタブレット Galaxy Note 10.1 2014 エディションを使用していますが、他のタブレット (Samsung P7500 Galaxy Tab 10.1、toshiba at7-a、samsung galaxy tab 3 10.1) ではクラッシュしないことに注意してください。

何か助けてください?

4

2 に答える 2

2

画像のサイズが大きいため、imageView のインフレータ レイアウトでインフレータブル例外が発生し、画像を小さくしてから、imageview で set null を置き換える前に (自動的に GC を呼び出します)、マニフェスト ファイルのアプリケーション タグに追加します。以下の行:

android:Largeheap = "true"
于 2014-06-11T07:38:03.200 に答える