Где находятся файлы реализации UIKit Framework?

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

Итак, в основном я пытаюсь найти файлы UIK.M, где они будут расположены на моем mac?

Ответ 1

Они не на вашем Mac (в исходной форме). Только Apple имеет доступ к большинству источников UIKit. То, что у вас есть на вашем Mac, уже скомпилировано в бинарные файлы библиотеки.

Ответ 2

Исходный код (как сказал hotpaw2) доступен только Apple, но есть несколько способов увидеть, что происходит:

  • Используя программный класс-дамп (пример вывода для UIKit: https://github.com/kennytm/iphone-private-frameworks/tree/master/UIKit/), вы можете просмотреть все частные методы и переменные экземпляра классы UIKit, чтобы увидеть, как они реализуют их на более высоком уровне.
  • Дисассемблеры, такие как IDA Pro (http://hex-rays.com/), могут разбирать и читать код уровня сборки для классов, хотя это значительно ниже что часто бывает полезным.

Итак, хотя это не так просто, как открытие некоторых файлов .m, конечно, можно увидеть, как Apple делает вещи в UIKit!