对这个问题进行了大量研究,并找到了同样的问题,这个问题并没有解决我的问题。所以开始一个新问题。 Xamarin Android: Android.Views.InflateException - Error when loading Layout
获取 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大小的图标。
请提前解决此问题的解决方案......
答案 0 :(得分:1)
获取Xamairin表单:Android.Views.InflateException:加载布局时超时会超出获取异常详细信息。
在使用TextInputLayout
之前,有两件事需要确认:
请确保Xamarin.Android.Support.Design
项目中正确引用了Xamarin.Android
lib。如果您使用的是Xamarin.Forms
,则默认情况下应该引用它。
请确保活动的类型为Android.Support.V7.App.AppCompatActivity
。
如果上述内容均无效,请提供可重现问题的基本演示。
更新
在您共享的项目上进行测试。我发现您需要为您的活动使用Theme.AppCompat
主题,您可以按照以下步骤操作:
使用以下代码在styles.xml
文件夹下创建Resources\values\
文件:
<?xml version="1.0" encoding="utf-8" ?>
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
</style>
</resources>
在MainActivity.cs
中定义Activity
属性,以便像这样利用AppTheme
:
[Activity(Label = "DinexFeedback", MainLauncher = true, Icon = "@drawable/icon",Theme ="@style/AppTheme")]
public class MainActivity : Android.Support.V7.App.AppCompatActivity
{
...
然后项目运行正常。
答案 1 :(得分:0)
未处理的异常:Android.Views.InflateException:
确保在Visual Studio中安装了必要的nuget软件包。
我在项目中使用了卡片视图,但由于未安装Xamarin.Android.Support.cardview,因此出现了此问题。
所以我们应该安装所有支持的nuget软件包,以便在这里使用卡视图来支持所有小部件。
单击项目-> Manage Nuget->检查已安装的软件包,如果尚未安装该软件包,则只需搜索特定的软件包然后下载。
于10/12/2018更新
检查布局是否所有布局字段均以大写字母开头。例如:在android中,我们使用小写字母,但在c#中,我们应该使用否则,它将引发inflate视图异常。