Xamarin 表格:Android.Views.InflateException:<Timeout exceeded getting exception details>

Xamairin forms : Android.Views.InflateException: <Timeout exceeded getting exception details>

对这个问题进行了大量研究,发现了同样的问题,但没有解决我的问题。所以开始一个新问题。

获取 Xamairin 表单:Android.Views.InflateException:加载布局时超时获取异常 详细信息。

Main.axml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" 
android:layout_height="match_parent"
android:background="#FFCDD2"
android:orientation="vertical">
<android.support.design.widget.TextInputLayout
    android:id="@+id/input_layout_name"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">
    <EditText
        android:id="@+id/input_name"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:singleLine="true"
        android:hint="@string/hint_name" />
</android.support.design.widget.TextInputLayout>
<android.support.design.widget.TextInputLayout
    android:id="@+id/input_layout_email"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">
    <EditText
        android:id="@+id/input_email"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:inputType="textEmailAddress"
        android:hint="@string/hint_email" />
</android.support.design.widget.TextInputLayout>
<android.support.design.widget.TextInputLayout
    android:id="@+id/input_layout_password"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">
    <EditText
        android:id="@+id/input_password"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:inputType="textPassword"
        android:hint="@string/hint_password" />
</android.support.design.widget.TextInputLayout>
<Button
    android:id="@+id/btn_signup"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="@string/btn_sign_up"
    android:background="@color/colorPrimary"
    android:layout_marginTop="40dp"
    android:textColor="@android:color/white" />
</LinearLayout>

我没有在我的 axml 中使用 layout:width 和 layout:height 属性,只使用了一个 4kb 大小的图标。

请提出解决此问题的建议,在此先感谢...

Getting Xamairin forms : Android.Views.InflateException: Timeout exceeded getting exception details when loading layout.

使用TextInputLayout之前需要确认两件事:

  1. 请确保在您的 Xamarin.Android 项目中正确引用了 Xamarin.Android.Support.Design 库。如果你用的是Xamarin.Forms,应该默认引用

  2. 请确保 Activity 的类型为 Android.Support.V7.App.AppCompatActivity

如果以上 none 有帮助,请提供可以重现问题的基本演示。

更新:

根据您分享的项目进行测试。我发现您需要为 activity 使用 Theme.AppCompat 主题,您可以按照以下步骤进行操作:

  1. 使用以下代码在 Resources\values\ 文件夹下创建一个 styles.xml 文件:

    <?xml version="1.0" encoding="utf-8" ?> 
    <resources>
     <!-- Base application theme. -->
        <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
        </style>
    </resources>
    
  2. MainActivity.cs 中定义 Activity 属性以利用 AppTheme,如下所示:

    [Activity(Label = "DinexFeedback", MainLauncher = true, Icon = "@drawable/icon",Theme ="@style/AppTheme")]
    public class MainActivity : Android.Support.V7.App.AppCompatActivity
    {
       ...
    

那么该项目将 运行 正常。

未处理的异常:Android.Views.InflateException:

确保在 visual studio 中安装了必要的 nuget 包。

我在我的项目中使用了卡片视图,我遇到这个问题是因为我没有安装 Xamarin.Android.Support.cardview。

所以我们应该安装所有支持 nuget 包以支持这里的所有小部件我使用卡片视图。

点击项目 -> 管理 Nuget -> 检查已安装的包,如果没有安装包,只需搜索特定的包,然后下载它。

更新于 2018 年 10 月 12 日

检查您的布局是否所有布局字段都以大写字母开头。例如:在 android 中,我们使用小写字母,但在 C# 中,我们应该使用,否则它会抛出膨胀视图异常。