سؤال

أحتاج إلى توضيح منكم جميعًا ، وهذا هو أنني أقوم بتطبيق تطبيق iPad. في ذلك حاولت تنزيل الصور وتحريكها. يجب أن يكون عدد الصور أكثر من 100000. الرمز الذي استخدمته لتنزيله وإضافته إلى العرض على النحو التالي.

UIImageView* imageView=[[UIImageView alloc]initWithFrame:CGRectMake(0, 0,100,100)];
NSData *receivedData=nil;
receivedData = [NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://path/prudently/iphone/image_s/e545afbf-4e3e-442e-92f9-a7891fc3ea9f/test.png"]];
imageView.image = [[UIImage alloc] initWithData:receivedData] ;
[subView addSubview:imageView];
[imageView release];

لكنني أتلقى استثناءً بعد أن أضفت بنجاح أكثر من 8000 صورة إلى الرؤية الفرعية الخاصة بي. أحصل على استثناء في الحصول على بيانات من عنوان URL. وشيء آخر لا أقوم بإصدار عرض فرعي لأنه بمجرد تنزيلها ، أحتاج إلى تحريك الرؤية الفرعية.

من فضلك أعطني اقتراحاتك

شكرا لك ، سيخار بيثالام.

هل كانت مفيدة؟

المحلول

يمكنك كتابة عنوان URL أو الصور أو أي شيء إلى ملف محاكاة مؤقتًا ، وتقسيم بعض الصفحات لتحريك الصور ... عندما يضغط المستخدم على رابط صفحة ، وقراءة التطبيق وتحريك صور هذه الصفحة ، وصور الصفحة التي لا يقوم بها المستخدم لا تحتاج إلى عرض.

نصائح أخرى

قد تبدو 100000 صورة كثيرًا لتطبيقات سطح المكتب ، ناهيك عن هاتف ذكي مثل iPhone. أليس هناك نهج آخر يمكنك اتباعه لحل هذه المشكلة التي لن تحتاج إلى عدد كبير من الموارد؟

الطريقة الوحيدة التي ستحقق بها ذلك هي إنشاء وتدمير UiimageViews عند الحاجة إليها على الشاشة. إن iPhone/iPad/Ianything غير قادر على فعل ما تريد بسبب الذاكرة المحدودة على الجهاز.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top