Xamarin Android - как перестроить ресурс.дизайнер.цезий
в Xamarin Android - Как восстановить ресурс.дизайнер.cs
Я попытался отметить все действие сборки XML-файла как "AndroidResource" и все еще ресурс.дизайнер.cs не будет обновляться новыми значениями.
какой триггер события генерирует этот файл?
14 ответов
Я обнаружил, что Xamarin studio прекратит регенерацию файла ресурсов из-за изменений в файле проекта. Верхняя сборка PropertyGroup должна содержать записи для
<RootNamespace>**Your_Root_Namespace**</RootNamespace>
<MonoAndroidResourcePrefix>Resources</MonoAndroidResourcePrefix>
<MonoAndroidAssetsPrefix>Assets</MonoAndroidAssetsPrefix>
<AndroidUseLatestPlatformSdk>True</AndroidUseLatestPlatformSdk>
<AndroidApplication>True</AndroidApplication>
<AndroidResgenFile>Resources\Resource.designer.cs</AndroidResgenFile>
<AndroidResgenClass>Resource</AndroidResgenClass>
<TargetFrameworkVersion>*your value here*</TargetFrameworkVersion>
и по какой-то причине они просто исчезают. Если вы открываете csproj проекта Android с помощью текстового редактора и добавляете эти записи, он, похоже, работает. Я схватил эти записи из нового проекта, который я создал в Xamarin Studio, который работал, что, возможно, самый простой способ сделать этот.
недавно как Xamarin Studio 5.6 (сборка 273) с Xamarin.Android 4.18.0, если вы вручную удалили Resource.designer.cs
файл из проекта, Восстановление будет регенерировать Resource.designer.cs
, но и не добавить его в проект. Поэтому после попытки перестроения один раз файл будет присутствовать в файловой системе, но не в проекте. Чтобы исправить это, вручную добавьте вновь созданный файл в папку ресурсов в проекте.
1.Щелкните Ресурс.дизайнер.cs-файл из вашего проекта.
2.Нажмите CTRL+A (выбрать все)
3.Нажмите клавишу Del (удалить)
4.Очистите и перестройте свой проект(если вы получите сообщение для измененного ресурса.дизайнер.cs нажмите кнопку" Да всем").
теперь вы получаете ошибку для первых зданий. но ваш ресурс.дизайнер.файл cs восстанавливается.теперь вы можете второй сборки. свои работы.
казалось бы, это может произойти по ряду причин. Одним из шагов, который может помочь выявить проблему, является увеличение детализации вывода сборки в Visual studio: Инструменты - > Параметры - > сборка и запуск -> изменение "детализации вывода сборки проекта MSBuild" на "Диагностика".
в моем случае один из моих элементов управления не имел идентификатора, поэтому он привел к ресурсу.Дизайнер.cs не обновляется (но не делает этого молча).
файл начал обновление еще раз я добавил Id.
Примечание: Вы, вероятно, захотите изменить многословие вывода сборки обратно в нормальное состояние после того, как найдете свою проблему.
Это проще, чем кажется...
http://docs.xamarin.com/recipes/android/general/projects/specify_default_namespace/
вы можете переименовать свой проект с помощью find / replace, но файл ресурсов будет использовать все, что установлено для "пространства имен по умолчанию" в основных настройках, и будет продолжать возвращаться к этому имени, даже если вы вручную отредактируете ресурс.дизайнер.cs-файл в Xamarin или из Xamarin.
Ресурсе.дизайнер.папка cs будет обновляться, как упоминал @Brendan Zagaeski.
однако, поскольку кажется, что это не решило вашу проблему, похоже, что Xamarin не распознал никаких изменений, которые вы сделали. По крайней мере, это то, что случилось со мной.
Я закончил тем, что решил его переименование сгенерированной папки" Layout "в"layout" ( Я сделал то же самое для рисунков и значений). После этого, просто построив проект снова ресурс.Дизайнер обновлено успешно.
надеюсь, это кому-то поможет.
метод1: Удалите файл из проекта, а также удалите файлы bin и obj, а затем создайте проект, он должен работать 100%, как я использую для этого, если я сталкиваюсь с той же проблемой, если это не работает всегда есть другой вариант
метода Method2: закройте приложение i.e, visual studio, карта к c - > пользователи - > - > AppData (скрытый файл) - > удалить файл xamarin из локального и перемещаемого
Это случалось со мной несколько раз, и каждый раз проблема заключалась не в генерации самого файла, а в искаженном ресурсе android. Поэтому, если это произойдет после слияния чего-либо из вашего репозитория, дважды проверьте свои ресурсы android (цвета, строки и т. д.) на наличие любого искаженного XML-кода.
чтобы решение проекта перестроения работало, вы должны отредактировать файл, который его генерирует, а затем перестроить проект.
У меня была точно такая же проблема и ни один из ответов здесь работал. Наконец, я понял, что у меня есть некоторые ссылки на изображения в некоторых макетах, которые еще не существовали. Кажется, если у вас есть сломанный исходный путь, ресурс.Дизайнер.cs прекращает обновление без каких-либо ошибок. Наконец, после удаления эталонных изображений проблема была решена и ресурс.Дизайнер.КС не обновлялась.
надеюсь, это кому-то поможет!
для людей, у которых все еще есть эта проблема, когда вы смотрите на список ошибок, какая-то ошибка может сказать что-то вроде "не найден ресурс, который соответствует заданному" toRightOf @id/(имя ресурса) " (или любой другой позиции в относительном макете)... вы должны выделить весь код ресурса (в файле axml), который имеет идентификатор, вырезать, сохранить все, затем вставить его и перестроить... тогда ваш ресурс.Дизайнер.cs будет регенерировать! надеюсь, это поможет.
созданный Resources.designer.cs
класс будет обновлен, если вы перестроите свой проект.
Вы можете найти эту информацию по адресу:http://docs.xamarin.com/guides/android/getting_started/hello%2C_world