无法在Xamarin中找到资源ID

时间:2017-04-20 06:42:36

标签: c# android xamarin xamarin.android

  <?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">
        <EditText
            android:id="@+id/et_user_name"
            android:hint="Enter Username"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" />

    </LinearLayout>

我无法在此活动中找到EditText的资源ID。

using Android.App;
using Android.OS;
using MvvmCross.Droid.Views;

namespace ExpenseApp.Android.Views
{
    [Activity(Label = "View for FirstViewModel")]
    public class FirstView : MvxActivity
    {
        protected override void OnCreate(Bundle bundle)
        {
            base.OnCreate(bundle);
            SetContentView(Resource.Layout.FirstView);
           EditText username = FindViewById<EditText>(Resource.Id.et_user_name);
        }
    }
}

我还清理了解决方案,并重建了解决方案,但仍无法找到解决方案。

1 个答案:

答案 0 :(得分:0)

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:local="http://schemas.android.com/apk/res-auto" // add this line
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">

<EditText
            android:id="@+id/et_user_name"
            android:hint="Enter Username"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            local:MvxBind="Value Property" /> <-- bind your data direct

    </LinearLayout>

我不知道为什么引发此错误可能是您不需要使用FindViewById方法,因为您使用MvxActivity可以按我提到的方式绑定数据

希望这项工作