android - SetContentView() 错误 : Android. Views.InflateException

标签 android xml visual-studio xamarin xamarin.android

每当我进行新 Activity 时,都会在 SetContentView() 处发生错误其内部方法 OnCreate()方法。

错误状态:Unhandled Exception: Android.Views.InflateException: Binary XML file line #1: Binary XML file line #1: Error inflating class <unknown> occurred .

我查阅了其他类似问题及其答案,但他们的解决方案对我不起作用。

我的布局 XML 代码

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:minWidth="25px"
    android:id="@+id/testing"
    android:minHeight="25px">
    <Toolbar
        android:minHeight="?android:attr/actionBarSize"
        android:background="?android:attr/colorPrimary"
        android:minWidth="25px"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/toolbar1">
        <LinearLayout
            android:orientation="horizontal"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:id="@+id/linearLayout1">
            <ImageView
                android:src="@drawable/arrow_left"
                android:layout_width="40dp"
                android:layout_height="40dp"
                android:id="@+id/playMusicBackBtn" />
            <TextView
                android:text="Song Title"
                android:layout_marginLeft="10dp"
                android:textAppearance="?android:attr/textAppearanceLarge"
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:gravity="center"
                android:layout_gravity="center"
                android:id="@+id/nowPlayingSongTitle" />
            <Space
                android:layout_width="0dp"
                android:layout_height="0dp"
                android:layout_weight="1"
                android:id="@+id/space1" />
            <ImageView
                android:src="@drawable/settings_icon"
                android:layout_width="40dp"
                android:layout_height="40dp"
                android:id="@+id/playMusicSetting" />
        </LinearLayout>
    </Toolbar>
<!--Song Image-->
    <ImageView
        android:src="@android:drawable/ic_menu_gallery"
        android:layout_width="match_parent"
        android:layout_height="250dp"
        android:id="@+id/songImage"
        android:layout_margin="25dp" />
    <LinearLayout
        android:orientation="horizontal"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/linearLayout3">
        <TextView
            android:text="Song Title - Song Artist"
            android:textAppearance="?android:attr/textAppearanceMedium"
            android:layout_width="wrap_content"
            android:gravity="center"
            android:layout_marginLeft="15dp"
            android:layout_gravity="center"
            android:layout_height="match_parent"
            android:id="@+id/songTitleDisplay" />
        <Space
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:layout_weight="1"
            android:id="@+id/space1" />
        <ImageView
            android:src="@drawable/favorite_off"
            android:layout_width="50dp"
            android:layout_height="50dp"
            android:id="@+id/addFavoriteBtn"
            android:layout_marginRight="20dp" />
    </LinearLayout>
<!--Interactive Buttons that deal with the Media player-->
    <LinearLayout
        android:orientation="horizontal"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/linearLayout2"
        android:weightSum="4">
        <ImageView
            android:layout_marginLeft="20dp"
            android:src="@drawable/shuffle_off"
            android:layout_width="55dp"
            android:layout_height="55dp"
            android:id="@+id/shuffleBtn" />
        <Space
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:layout_weight="1"
            android:id="@+id/space1" />
        <ImageView
            android:src="@drawable/play_prev"
            android:layout_width="55dp"
            android:layout_height="55dp"
            android:id="@+id/playPrevBtn" />
        <Space
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:layout_weight="1"
            android:id="@+id/space1" />
        <ImageView
            android:src="@drawable/play"
            android:layout_width="55dp"
            android:layout_height="55dp"
            android:id="@+id/playPauseBtn" />
        <Space
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:layout_weight="1"
            android:id="@+id/space1" />
        <ImageView
            android:src="@drawable/play_next"
            android:layout_width="55dp"
            android:layout_height="55dp"
            android:id="@+id/playNextBtn" />
        <Space
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:layout_weight="1"
            android:id="@+id/space1" />
        <ImageView
            android:src="@drawable/repeat_off"
            android:layout_width="55dp"
            android:layout_height="55dp"
            android:layout_marginRight="20dp"
            android:id="@+id/repeatBtn" />
    </LinearLayout>
    <SeekBar
        android:layout_width="match_parent"
        android:layout_margin="5dp"
        android:layout_height="wrap_content"
        android:id="@+id/musicSeekerBar" />
    <TextView
        android:text="Current - Max"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:gravity="center"
        android:layout_marginTop="5dp"
        android:id="@+id/musicDuration" />
</LinearLayout>

问题主要发生在我添加了 seekerbar 和 textview(在 XML 的底部)之后。

Logcat(事件发生前的几行):

    09-13 09:09:28.332 I/art     ( 4650): Clamp target GC heap from 283MB to 256MB
09-13 09:09:28.332 I/art     ( 4650): Alloc concurrent mark sweep GC freed 3(72B) AllocSpace objects, 0(0B) LOS objects, 1% free, 251MB/256MB, paused 597us total 35.921ms
09-13 09:09:28.332 I/art     ( 4650): Forcing collection of SoftReferences for 13MB allocation
09-13 09:09:28.332 I/art     ( 4650): Starting a blocking GC Alloc
09-13 09:09:28.365 I/art     ( 4650): Clamp target GC heap from 283MB to 256MB
09-13 09:09:28.365 I/art     ( 4650): Alloc concurrent mark sweep GC freed 3(72B) AllocSpace objects, 0(0B) LOS objects, 1% free, 251MB/256MB, paused 500us total 32.744ms
09-13 09:09:28.365 W/art     ( 4650): Throwing OutOfMemoryError "Failed to allocate a 14107548 byte allocation with 4666448 free bytes and 4MB until OOM"
09-13 09:09:28.366 D/skia    ( 4650): --- allocation failed for scaled bitmap
Unhandled Exception:

Android.Views.InflateException: Binary XML file line #1: Binary XML file line #1: Error inflating class <unknown>

另外,我使用 Visual Studio 2017 作为我的 IDE。

最佳答案

它与您的守护程序无法缩放和转换的图像有关,并且发生系统内存泄漏。

尝试减小所有可绘制对象和图像源的大小。这将解决内存不足的问题。

关于android - SetContentView() 错误 : Android. Views.InflateException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46187149/

相关文章:

c# - 在 Visual Studio 中给定一个类,如何找出包含它的 dll?

c++ - g++ 比使用列表的 visual studio 慢 1000 倍?

c# - Microsoft.SqlServer.Management.Smo 命名空间 - 我需要安装什么来解决它?

android - camera.setParameters 在 android 中失败

android - 如何防止多次调用 onHandleIntent() - IntentService

php - 在 NuSOAP 上创建重复标签

sql-server - FOR XML SQL Server - 输出 XML 中的变量元素名称

android - 多个 View 和动画滞后

安卓平台版本

android - 为什么部分文本位于屏幕后面?