Описание тега swizzling

Swizzling относится к извлечению, перегруппировке и возможному дублированию элементов типов кортежей. На многих графических процессорах swizzling бесплатен или, по крайней мере, дешев, а разумное использование swizzling может сделать ваш код более эффективным. Однако неправильное использование swizzling также может сделать ваш код невероятно трудным для чтения и может затруднить компилятору его оптимизацию.
1 ответ

Как мне заменить экземпляр класса в системе на подкласс в Objective-C?

Я подклассифицировал системный класс (UINavigationBar, чтобы быть определенным), чтобы добавить некоторую определенную функциональность. Я использовал это везде, как замену UINavigationBar. Однако теперь я хочу заменить некоторые UINavigationBars, и…
31 авг '11 в 13:27
2 ответа

Подключение Objective C к [AppDelegate openUrl]

Среда xcode 6.4 Objective-C iOS-приложение Использование регистра Продукт представляет собой SDK, интегрированный в сторонние приложения Нет доступа к исходному коду приложения с помощью SDK Модули в SDK должны получить URL-адрес, используемый для з…
11 авг '15 в 18:00
2 ответа

Swizzling initWithFrame: не работает для объектов в NIB

Я использую initWithFrame: и dealloc для MKMapView и UIScrollView, чтобы добавить и удалить прослушиватели уведомлений для мониторинга подключения к внешнему устройству, чтобы я мог подключить дополнительные распознаватели жестов для этих представле…
12 май '11 в 01:28
3 ответа

Есть ли альтернатива initialize() в macOS теперь, когда Swift устарела?

Objective-C объявляет функцию класса initialize(), которая запускается один раз для каждого класса, прежде чем она будет использована. Он часто используется как точка входа для обмена реализациями методов (Swizzling), среди прочего. Его использовани…
28 фев '18 в 12:23
0 ответов

Как подключить CFNetwork в iOS?

Я уже знаю, как подключить NSURLSession а также NSURLConnection, который называется Swizzling, Мой GitHub репо DotzuX также используется Swizzling подключить NSURLSession обертку, как AFNetworking и Alamofire. Но когда использовать CFNetwork обертку…
16 мар '18 в 02:01
1 ответ

iOS - EXC_BAD_ACCESS code = 1 UIWebView аварийно завершает работу после (метод переворота) init

Я просто переключил свое приложение на ARC. Переход был частично успешным благодаря инструменту рефакторинга, который предоставляет XCode. Одна часть, которая не работает, является странной ошибкой. Я использовал метод swizzling (method_exchangeImpl…
1 ответ

IOS Swizzle лучше понять

У меня есть UIViewController с этим кодом: - (void)viewDidAppear:(BOOL)animated { [super viewDidAppear:animated]; NSLog(@"CLASIC"); } А потом у меня есть фреймворк с категорией UIViewController, который делает свистлинг следующим образом: + (void)lo…
07 ноя '18 в 11:34
1 ответ

willMoveToWindow вызывается дважды

Я пью willMoveToWindow: и я столкнулся с проблемой, где это называлось дважды на представлениях. Когда новый контроллер представления помещается на UINavigationController, willMoveToWindow: вызывается на существующий вид с nil значение (имеет смысл,…
27 дек '15 в 20:29
2 ответа

Как прокрутить метод init класса NSURLConnection

Я хочу swizzle init init метод класса NSURLConnection, и я пробовал этот код, но он не работает для меня extension NSURLConnection{ public override class func initialize() { struct Static { static var token: dispatch_once_t = 0 } dispatch_once(&…
22 фев '16 в 08:10
1 ответ

Прикосновение к крючку начинается в классе UIView [Swizzling] с Delphi XE5

Я пытаюсь поймать все сенсорные события во всем мире. Для этого я знаю, что могу подключить процедуры сенсорного события внутри класса UIView. У меня есть код, который компилируется. Моя реализация крючка procedure touchesBeganDetour(self: id; _cmd:…
04 фев '14 в 09:15
2 ответа

SIMBL в поиске

Мне удается интегрировать Icon Overlay как Dropbox в Mac Os Finder с помощью плагина SIMBL! Я использую метод swizzle, чтобы переопределить некоторые функции поиска. Вот мой метод Swizzle: void PluginSwizzleInstanceMethod(Class cls, SEL oldSel, SEL …
07 май '12 в 10:17
1 ответ

DrawRect UIView не вызывается, когда пьяный

Я экспериментирую с продвинутыми методами Objective-C. Чего я хочу добиться, так это добавить определенный код чертежа к существующему UIView, Я начал легко, я продолжил объявлять свой drawRect метод в категории: @interface UIView (Swizzled) - (void…
2 ответа

Скопируйте метод IMP для нескольких методов Swizzles

У меня есть настроенный класс, который в идеале будет читать методы любого переданного класса, а затем отображать все из них на один селектор во время выполнения, прежде чем перенаправлять их в свой оригинальный селектор. Это работает прямо сейчас, …
11 фев '12 в 17:58
1 ответ

Цель C Метод Swizzling с использованием динамической библиотеки

Я пытаюсь научиться меткому методу. Я создал программу с целью C, которая просто вызывает метод в своем классе. Теперь я пытаюсь загрузить динамическую библиотеку, используя DYLD_INSERT_LIBRARIES, чтобы я мог переопределить реализацию моего метода н…
0 ответов

Swizzle метод класса и метод экземпляра

У меня есть какое-то странное требование, чтобы использовать метод класса методом экземпляра. По сути, они находятся в разных классах A и B. A имеет статическую функцию под названием public static func aTest() {} B - синглтон с функцией static let s…
17 ноя '15 в 21:52
1 ответ

Цель C - В чем разница между IMP и указателем на функцию?

Я недавно запустил проект, в котором мне нужно заняться алкоголем. Пройдя много уроков, я получил вопрос: в чем разница между реализацией и указателем на функцию?
30 дек '15 в 04:50
1 ответ

Swizzling - Отмена селектора методов в Sw головокружительной iOS

Мы используем Swizzling в Objective-C. Для удобства мы используем вспомогательные методы CoconutKit для достижения этой цели: HLSSwizzleSelectorWithBlock_Begin([TMObjectCache class], @selector(objectForKey:)) ^(TMObjectCache *self, NSString *key) { …
27 апр '15 в 14:55
2 ответа

Метод Swizzling для NSArray

Я пытаюсь что-то отладить в NSArray, и я даже не могу найти указатель на массив, который вызывает проблему, и я понятия не имею, почему это происходит. Я получаю сообщение об ошибке для objectAtIndex: (выходит за пределы), и оно, похоже, исходит от …
28 авг '11 в 02:54
1 ответ

Не в состоянии пошутить NSOutputStream's пишут:MaxLength:

У меня есть требование записи пользовательских данных, прежде чем произойдет фактическая запись NSOutputStream. Для выполнения кода Swizzling я создал категорию NSOutputStream(SwizzleWrite), которая содержит следующее: SEL originalSelector = @select…
29 ноя '14 в 07:16
1 ответ

NSURLConnection крутится в iOS

Я создал метод NSURLConnection swizzling для sendSynchronousRequest, однако мой код не работает ниже. Всякий раз, когда я пытаюсь вызвать это из основной функции, происходит сбой. let originalRequestSyncSelector = #selector(self.sendSynchronousReque…
28 дек '18 в 07:23