iPhone Icon@2x.png не отображается на дисплее Retina - PullRequest
22 голосов
/ 12 октября 2010

По какой-то причине iPhone 4 отказывается отображать мой файл значков высокого разрешения.

Я проверил эти решения, ни одно из которых не помогло мне:

Как настроить обычный значок для iPhone3 и Retina для iPhone 4

http://developer.apple.com/library/ios/#qa/qa2010/qa1686.html

http://appworks.radeeccles.com/programming/cfbundleiconfiles-nice-ready-prime-time/

Значки находятся в моей группе ресурсов, и все они названы правильно:

  • Icon.png
  • Icon@2x.png
  • Icon-72.png

Я также попытался добавить их в файл Info.plist, сначала в виде массива, затем в виде словаря, затем просто удалив все ссылки на значки из файла plist, но независимо от того, что я делаю, он все равно отображает 57x57 значок увеличен.

Может ли кто-нибудь, у кого есть рабочая иконка, опубликовать фактическое заклинание XML, необходимое для этой работы?

Ответы [ 10 ]

55 голосов
/ 22 октября 2010

Мое решение было простым, но оно застало его кропотливым сравнением построчно в Apple Docs.

Неочевидным решением, которое выглядело противоречивым, было «Удаление значения ключа файла Icon». На изображении предыдущего ответа вы видите, что в значке файла все еще отображается «icon.png», а в «файлах значков» - два: icon.png & icon@2x.png.

Я заставил мое приложение работать, удалив значение ключа «Файл значка» в «Icon.png». Единственное, что отличалось, в Apple Docs было отсутствие значения для ключа «Файл значка». Посмотреть изображение здесь: ссылка удалена ...

Обновлена ​​ссылка, которая показывает эти изображения: https://developer.apple.com/library/content/qa/qa1686/_index.html#//apple_ref/doc/uid/DTS40009882

Кроме того, я бы позаботился о том, чтобы при маркировке фотографий вы использовали рекомендованную яблоком нотацию:

  • 512x512 iTunesArtwork iTunes Image
  • 57x57 Icon.png Главный экран для
  • 114x114 Icon@2x.png Главный экран для iPhone 4 с высоким разрешением
  • 72x72 Icon-72.png Главный экран для совместимости с iPad
  • 29x29 Icon-Small.png Прожектор и настройки
  • 50x50 Icon-Small-50.png Прожектор для совместимости с iPad
  • 58x58 Icon-Small@2x.png Прожектор и настройки для iPhone 4 Высокое разрешение

Следующие шаги ...

  1. Очистить все цели
  2. Сброс симулятора
  3. Перезапустить приложение
  4. Отлично работает для iPhone4, показывает большой AppIcon = "Icon@2x.png"

Заключительные шаги ...

  1. Я вернул имя "Icon.png" для клавиши (Файл значка).
  2. Я вернул это обратно в Обратную поддержку iOS 3.0+, чтобы у нее все еще было значение для использования.
  3. Снова очистите все цели,
  4. Build & Relauch!

Этот метод сшивает все существующие проблемы и гарантирует, что симулятор извлекает правильные файлы.

Надеюсь, это поможет!

P.S. Если это поможет вам решить вашу проблему, обязательно проверьте мой комментарий как Решение.

17 голосов
/ 12 октября 2010

у меня тоже была эта проблема ... вот как мне удалось ее исправить

в вашем файле info.plist вам нужно две записи:

первым будет «файл значков», и это должен быть «Icon.png».

вторая запись будет "иконка файлов", а это массив ...

ПЕРВЫЙ ВХОД в массиве - это ваш файл значков по умолчанию: "Icon.png"

ВТОРОЙ ВХОД - файл значков с высоким разрешением: "Icon@2x.png"

alt text

4 голосов
/ 03 декабря 2010

У меня была похожая проблема, и я безуспешно попробовал запись массива "Файлы значков" в файле info.plist.

Чтобы заставить его работать, я удалил все записи «Файл значков» и «Файлы значков» в файле info.plist, а также на вкладке «Свойства» в настройках проекта. Тогда просто использовал соглашения об именах Apple для всех моих файлов

    * 512x512 iTunesArtwork iTunes Image
    * 57x57 Icon.png Home screen for < iPhone 4
    * 114x114 Icon@2x.png Home screen for iPhone 4 High Resolution
    * 72x72 Icon-72.png Home screen for iPad compatibility
    * 29x29 Icon-Small.png Spotlight and Settings
    * 50x50 Icon-Small-50.png Spotlight for iPad compatibility
    * 58x58 Icon-Small@2x.png Spotlight and Settings for iPhone 4 High Resolution

от Newbyman.

Я тогда сделал чистку и сборку. iPhone правильно обнаружит названные значки в комплекте ресурсов и будет использовать соответствующий значок. Я тестирую как на iPhone4, так и на iPhone 1-го поколения с 3.1.3. Я использую iOS 4.2 и последнюю версию xcode. Надеюсь, это кому-нибудь поможет.

2 голосов
/ 06 декабря 2010

кажется, что ios4 не использует @ 2x грамматику по этой теме.

В вашем плисте файл "Иконки файлов"

добавить файлы
* icon57.png * icon114.png

это работает на моем проекте.

2 голосов
/ 23 ноября 2010

Все, что вам нужно сделать, это добавить в info.plist «Файлы значков» (не «Файл значков») и изменить этот тип значения на Массив (щелкните правой кнопкой мыши в «Файлы значков»).После этого добавьте две строки (снова щелкните правой кнопкой мыши) и введите «icon.png» в первой и «icon@2x.png» во второй.

1 голос
/ 14 ноября 2010

Я попробовал решение Newbyman, но оно не сработало.Кажется, проблема возникает, когда вы пытаетесь добавить новые значки в более старый проект и пытаетесь сохранить устаревшую версию 3.0 ... Каким-то образом вы можете совершенно правильно добавить массив «Файлы значков» в info.plist, и он все равно сохранит исходныйзначок низкого разрешения на дисплее сетчатки ....

В конечном итоге я решил полностью удалить info.plist и получить новый info.plist из нового работающего проекта, а затем изменить значения дляИнформация об имени значка и информации о продукте, поэтому она в основном совпадает со старым списком info.plist, но некоторая устаревшая информация должна исчезнуть. Убедитесь, что вы отметили «добавить как цель» при добавлении обратно в новый список info.plist ....

0 голосов
/ 19 марта 2011

У меня просто была куча неприятностей с этим самим. Я пришел к выводу, что проблема с порядком значков в массиве. У меня изначально был заказ как:

Icon.png
Icon-72.png
Icon@2x.png

Это не сработает. Однако, когда я изменил это на все, все работало нормально:

Icon.png
Icon@2x.png
Icon-72.png
0 голосов
/ 15 марта 2011

Хорошо, у меня снова возникла проблема.

На самом деле происходило то, что Icon@2x.png фактически сохранялся в виде файла jpg. Так что xcode с радостью включил бы изображение «png», а iOS ничего бы этого не сделала.

XCode 4 фактически проверяет это и жалуется, что приятно.

0 голосов
/ 24 января 2011

Иногда необходимо удалить значки, очистить сборку, добавить значки обратно, запустить на устройстве. Это помогает мне.

0 голосов
/ 20 ноября 2010

Ну, после большого разочарования, единственный способ, которым я смог добиться этой работы, - это создать новую цель и удалить все ссылки на значки из файла plist.

...