我是Xamarin的新手。我正在尝试在Android应用程序中创建自己的视图,但它在构造函数上引发了ClassNotFoundException。我正在寻找类似的问题,但没有找到类似的问题(只有here是我认为可能非常相似的问题,但实际上并没有解决-答案告诉您编辑Java文件,但是当在Xamarin中工作)。这是我的MainActivity.cs代码:

using Android.App;
using Android.OS;

namespace App5
{
    [Activity(Label = "App5", MainLauncher = true)]
    public class MainActivity : Activity
    {
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);
            View1 view = new View1(this);
            SetContentView(view);
            //SetContentView(Resource.Layout.Main);
         }
    }
}


和View1.cs:

using Android.Content;
using Android.Views;

namespace App5
{
    public class View1 : View
    {
        public View1(Context context)
           : base(context)
        {
        }
    }
}


这是对异常的描述:


  Java.Lang.ClassNotFoundException:在路径:DexPathList [[zip file“ /data/app/App5.App5-1/base.apk"],nativeLibraryDirectories=[/data/app/ App5.App5-1 / lib / arm64,/ system / fake-libs64,/ data / app / App5.App5-1 / base.apk!/ lib / arm64-v8a,/ system / lib64,/ vendor / lib64]]]


奇怪的是,当我评论从View继承而来的构造函数,当然还有SetContentView到资源中的布局时,系统“可以找到此类”并且应用程序不会崩溃。

我正在使用VisualStudio 2015,并安装了Xamarin的最新稳定版本。

最佳答案

尝试删除bin和obj并重建项目。上一次Visual Studio更新后,这件事就发生在我身上。另一个想法是杀死msbuilld程序。

关于c# - Xamarin自定义 View ClassNotFoundException,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47812966/

10-09 01:24