代码之家  ›  专栏  ›  技术社区  ›  Ron

未找到Android Xamarin colors.xml

  •  0
  • Ron  · 技术社区  · 2 年前

    我正在将我的Xamarin应用程序(适用于Android)转换为。NET 8。Resources/values中的应用程序源代码包含以下文件:

    colors.xml:

      <resources>
            <color name="colorPrimary">#DD5706</color>
            <color name="colorPrimaryDark">#1B3147</color>
            <color name="colorAccent">#8167E6</color>
           
          <color name="white">#ffffff</color>
          <color name="darkwhite">#EFFFFE</color>
          <color name="transparent">#00ffff</color>
          <color name="semitransparent">#880000</color>
          <color name="orange">#ff8800</color>
          <color name="light_orange">#e27d18</color>
          <color name="light_blue">#87CEEB</color>
          <color name="black">#000000</color>
          <color name="menuButtonColor">#ea8e44</color>
          <color name="btn_normal">#ea8e44</color>
          <color name="pressed_color">#e27d18</color>
          <color name="default_color">#f8f1e7</color>
          <color name="selected">#f8dcd3</color>
        </resources>
    

    可绘制文件夹中有background.xml:

    <selector xmlns:android="http://schemas.android.com/apk/res/android">    
      <item android:drawable="@android:color/background_light" android:state_pressed="false" android:state_selected="false"/>      
      <item android:drawable="@color/orange" android:state_pressed="true" android:state_selected="true"/>      
      <item android:drawable="@color/light_blue" android:state_pressed="false" android:state_selected="true"/>    
    </selector>
    

    然而,当我构建应用程序时,我会看到一系列错误,如下所示:

    resource color/orange (aka com.xyz.MyApp:color/orange) not found.
     
    

    有人建议我将其添加到csproj文件中:

    <ItemGroup> <AndroidResource Include="Resource Path" /> </ItemGroup>
    

    如果这与我昨天提出的问题重复,我深表歉意。

    1 回复  |  直到 2 年前
        1
  •  1
  •   Alec    2 年前

    要解决此问题,请确保在项目配置中正确引用了资源文件(colors.xml和background.xml)。

    确认资源文件: 确保colors.xml位于项目目录中的Resources/values中,background.xml位于Resources/drawable中。

    更新.csproj文件: 修改.csproj文件以包含以下资源:

    <ItemGroup>
      <AndroidResource Include="Resources\values\colors.xml" />
      <AndroidResource Include="Resources\drawable\background.xml" />
    </ItemGroup>
    

    如果文件的位置不同,请调整路径。

    清洁和重建: 更新.csproj文件后,请清理并重新生成项目,以确保正确包含所有资源:

    清洁解决方案:在Visual Studio中右键单击您的解决方案,然后选择“清洁解决方案” 重建解决方案:清洁后,再次右键单击并选择“重建解决方案” 验证资源引用: 仔细检查background.xml中的引用(如@color/orange和@color/light_blue)是否与colors.xml中定义的颜色名称匹配。

    这应该可以解决资源未找到的错误,并确保您的Xamarin应用程序顺利过渡到。NET 8。