名称'资源'在当前上下文中不存在

时间:2014-05-23 02:14:00

标签: android android-layout xamarin android-resources android-context

在Xamarin中,我将以下代码从工作活动粘贴到一个空白的新活动中:

[Activity (Label = "SimpleOnePageViewPager", MainLauncher = true)]
public class MainActivity : FragmentActivity
{
    protected override void OnCreate (Bundle bundle)
    {
        base.OnCreate (bundle);

        SetContentView (Resource.Layout.Main);

        FragmentItem fragItem = new FragmentItem ();

        List<Android.Support.V4.App.Fragment> fragments = new List<Android.Support.V4.App.Fragment>();
        fragments.Add(fragItem);

        ViewPagerAdapter pageAdapter = new ViewPagerAdapter(SupportFragmentManager, fragments);
        var pager = FindViewById<ViewPager>(Resource.Id.MainViewPager);
        pager.Adapter = pageAdapter;
    }
}

这是我得到的错误?

Error CS0103: The name 'Resource' does not exist in the current context

我可以帮助您使用此代码吗?

提前致谢

5 个答案:

答案 0 :(得分:1)

确保使用Project_Name添加命名空间;

答案 1 :(得分:1)

我也有这个问题,并通过以下步骤解决:

打开Android项目的MainActivity.cs并输入以下行:

using AppName.Droid

此行是文件Resource.designer.cs

中命名空间的名称

答案 2 :(得分:0)

您可以将MainActivity.cs Build Action属性更改为&#39; none&#39; ,而不是&#39; compile&#39; 。我希望这能解决你的问题。

谢谢, Imman

答案 3 :(得分:0)

这正是我刚解决的问题,我认为这是一个Xamarin Bug,当你添加一个现有的xaml文件时,它将它添加到项目中而不将其设置为应有的嵌入资源,并且没有设置自定义工具命令必须设置为:MSBuild:UpdateDesignTimeXaml

答案 4 :(得分:0)

我今天遇到了同样的问题。我四处搜寻,也尝试了上述解决方案,但从我这边来看并没有用。 我已经通过下面的步骤自己解决了这个问题:

  1. 更新xamarin nuget包
  2. 清理并重建项目

P / S:希望如果其他人遇到同样的问题,它可以为他们提供帮助。

编码愉快!