[英]Draw 4.000 Points or Lines in iOS objective-c from inside UIViewController
我有一個超過4.000 CGPoints的NSArray
[NSArray arrayWithObjects:
[NSValue valueWithCGPoint:CGPointMake(213, 30)], ...
並希望從我的UIViewController內部繪制它們之間的點或線。 iOS設備的最佳方式是什么? 日Thnx
聽起來你正在嘗試使用精靈或粒子生成? 在不知道更多細節的情況下,我只能給出一個通用的答案,但是lemme給了它一個機會。 讓我們假設這些點都是簡單的1像素彩色物品。 不需要漸變或路徑,只需“將像素設置為x,y設置為紅色/綠色/藍色”。
您應該可以輕松地同時操作4,000個CALayer
對象:
CALayer *rootLayer = [[self view] layer]; // assumes self is a view controller
NSMutableArray *mSprites = [NSMutableArray array]; // to store references to the layers
for (int i = 0; i < 4000; i++) {
CALayer *layer = [CALayer layer];
NSAssert1(layer != nil, @"failed to create CALayer #%i", i);
layer.backgroundColor = [UIColor colorWithRed:... green:... blue:... alpha:1.0].CGColor;
layer.frame = CGRectMake(rand(), rand(), 1.0, 1.0);
[mSprites addObject:layer];
[rootLayer addSublayer:layer];
}
self.my4000SpritesProperty = mSprites;
然后,當需要操作它們時,進入self.my4000SpritesProperty
的數組並更改圖層的框架或其他屬性。
對於4,000個元素,您應該看到Core Animation可接受的性能。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.