Я считаю, что наиболее распространенные элементы UIKit находятся в UIKit.framework / Other.artwork. .artwork
файлы - это просто необработанные пиксельные данные в порядке BGRA & mdash; чтобы сделать что-нибудь полезное, вам, как правило, потребуются смещения / размеры изображения.
Вместо этого, самый простой способ получить случайные изображения из SDK - это обычно визуализировать слой в контексте растрового изображения (или захватить CALayer.contents
, если это просто CGImage) и записать его в формате PNG. Сначала вы должны найти правильный слой & mdash; для ячейки таблицы я бы остановился на -tableView:didSelectRowAtIndexPath:
, позвонил бы [tableView cellForRowAtIndexPath:indexPath]
, чтобы получить ячейку, и просматривал ее подпредставления, пока не нашел что-то примерно подходящего размера для индикатора раскрытия. Затем просто позвоните что-то вроде
-(void)dumpLayerAsPNG:(CALayer*)layer
{
UIGraphicsBeginImageContextWithOptions(layer.bounds.size, 0, 0);
[layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage * img = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
NSData * imgData = UIImagePNGRepresentation(img);
NSString * docsDir = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES) objectAtIndex:0];
NSString * filename = @"foo.png";
[imgData writeToFile:[docsDir stringByAppendingPathComponent:filename] atomically:NO];
}