资源。我不在Xamarin工作

时间:2016-03-30 08:06:39

标签: c# android xamarin

这是main.axml文件。

`<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:minWidth="25px"
    android:minHeight="25px">
    <ListView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:id="@+id/myListView" />
</LinearLayout>`

这是MainActivity.cs文件:

protected override void OnCreate(Bundle bundle)     {         base.OnCreate(束);

    // Set our view from the "main" layout resource
    SetContentView(Resource.Layout.Main);

    Glop = new List<string>();

    Glop.Add("Tom");
    Glop.Add("Dick");
    Glop.Add("Harry");

    Name = FindViewById<ListView>(Resource.Id.myListView);

}

我正在尝试在Xamarin Android中创建Listview。

我已将android Id更改为myListView,并且还尝试重建应用程序但仍显示为错误。我现在该怎么办?

7 个答案:

答案 0 :(得分:13)

尝试再次重建应用并保存main.axml文件。

答案 1 :(得分:3)

1)构建 - &gt;清洁解决方案

2)构建解决方案

答案 2 :(得分:2)

选项1)确保更新Xamarin.Android(工具&gt;选项&gt; Xamarin&gt;其他&gt;立即检查)

选项2)以管理员身份运行VS并构建&gt;清理并重建解决方案。

对于我的案例,选项1确实有效。 enter image description here

答案 3 :(得分:2)

调整资源文件的属性,如下所示:

enter image description here

答案 4 :(得分:1)

我遇到了这种问题。原因可能来自项目中的重复资源ID。例如,复制布局文件(.axml)并直接粘贴到解决方案资源管理器窗格中的布局资源文件夹时,如果没有仔细查看资源ID名称,则会出现此问题。

由于项目命名空间中的ID引用规则是唯一的。虽然资源ID是在.Designer文件中自动生成的,但VS无法确定您打算使用哪一个是正确的,因此可以跳过和处理所有相同资源ID的情况而不发出警告。

结果是 - 在我在同一个项目中制作了一个重复的布局文件后,我在编码时无法引用它们的资源名称或ID。

对我来说,解决方案是在项目中查找重复的ID名称,并将其更正为唯一。

答案 5 :(得分:1)

对于Visual Studio Community 2019预览版(V 16.0.0,Pr 5.0):

对于这个问题以及设计人员的许多问题,我不得不重复执行以下操作:

  • 保存所有文档并关闭VS。
  • 导航到文件浏览器中的项目文件夹
  • 删除(或重命名,如果您偏执)“ obj”和“ bin”文件夹
  • 重新启动VS,然后再次尝试设计器。

使用此版本(授权的版本,仍为Beta),在设计器处于打开状态的情况下在项目上运行干净将导致访问许可错误,可以通过以下步骤进行纠正。

答案 6 :(得分:-1)

我的情况我刚刚关闭并重建了解决方案,它运行良好。