Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/209.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/sharepoint/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android Resource.Layout.filename返回错误的布局文件_Android_Visual Studio 2010_Xamarin.android - Fatal编程技术网

Android Resource.Layout.filename返回错误的布局文件

Android Resource.Layout.filename返回错误的布局文件,android,visual-studio-2010,xamarin.android,Android,Visual Studio 2010,Xamarin.android,我有一个MonoDroid应用程序项目(我们称之为mainApp)。这引用了app.Screenproject,它是一个MFA库项目。最初,我的活动是在mainApp项目中进行的。一切正常。我需要在app.Screen项目中放置一些活动(以及资源、绘图等)。 我已将所需的所有资源移动到app.Screen项目。它构建得很好,在我的活动(位于app.screens中)中,我可以访问Resource.Layout.filename,甚至Layout.Id.name 但是,当我运行应用程序时,在Set

我有一个
MonoDroid
应用程序项目(我们称之为
mainApp
)。这引用了
app.Screen
project,它是一个MFA库项目。最初,我的活动是在
mainApp
项目中进行的。一切正常。我需要在
app.Screen
项目中放置一些活动(以及资源、绘图等)。 我已将所需的所有资源移动到
app.Screen
项目。它构建得很好,在我的活动(位于app.screens中)中,我可以访问
Resource.Layout.filename
,甚至
Layout.Id.name

但是,当我运行应用程序时,在
SetContentView(Resource.Layout.filename)
中,我得到了错误的布局文件。这显然会导致
FindById()
返回
null
,因为它在此布局文件中没有这些按钮

我发现同一布局文件在我的MFA库项目中的Id与mainApp项目中的Id不同,如下所示:

// In the mainApp project
public partial class Layout
{
    // aapt resource value: 0x7f030001
    public const int DeliveryScreenLayout = 2130903041;

    // aapt resource value: 0x7f03000a
    public const int splash_screen_layout = 2130903050;

    private Layout()
    {
    }
}

// in app.screen library project
public partial class Layout
{

    // aapt resource value: 0x7f030000
    public static int has_hello_layout = 2130903040;

    // aapt resource value: 0x7f030001
    public static int splash_screen_layout = 2130903041;

    private Layout()
    {
    }
}
我正在使用VS2010和MFA4.0,我的项目是针对Android 4.0的。我尝试了
Clean&Build
,删除了
/Bin
/Obj
文件夹,但没有成功。
任何帮助都将不胜感激

这似乎是
MonoDroid
中的一个bug,下面是Xamarin bugzilla中的

这是由于MFA库项目中的
Resource.Designer.cs
与主项目在其
Resource.Designer.cs
文件中的ID(int)值不同而造成的

我已经想出了一个解决办法。在我的
mainApp
中,我手动调用
mainApp.Resources.UpdateIdValues()资源
id值

Xamarin说这个错误在4.6.4中得到了解决。但是我还没有测试这个补丁