سؤال

وأنا لست متأكدا مما إذا كان هذا هو الطريق على ما يرام، ... لدي بعض البيانات أنا أستلم من شبكة الإنترنت والتي بدورها بملء طريقة عرض جدول. المشكلة هي أن النص أتش تي أم أل (العلامات ص، الخ). كانت فكرتي الأولى لإنشاء uiwebview في الخلية، وملء مع loadHTMLString. والحقيقة هي، وأنها تعمل KINDA. ولكن، وبعد ذلك الخلية لم تعد كان المستفيد من اللمسات.

وSO، قبل أن نصل عميق جدا في التعليمات البرمجية، هل هناك طريقة أفضل لتجميع الخلايا، من استخدام UIWebView. فهو يبدو وكأنه الإختراق، وأخشى حتى لو كان يعمل، فإن التفاح تحويلها بعيدا.

و// من وجهة نظري مخصصة الطبقة UITableViewCell:

- (id)initWithFrame:(CGRect)frame reuseIdentifier:(NSString *)reuseIdentifier {
if (self = [super initWithFrame:frame reuseIdentifier:reuseIdentifier]) {
    [self setFrame:frame];

    webcell = [[UIWebView alloc] initWithFrame:CGRectMake(0,0,frame.size.width-20,frame.size.height)];
    [self.contentView addSubview:webcell];

    //bloack the webview from touches
    UIView *cover = [[UIView alloc] initWithFrame:webcell.frame];
    [self.contentView addSubview:cover];
    [cover release];
}
return self;

و}

- (الفراغ) setLabelData: (FeedItem *) feedItem {     رابط = feedItem.link؛

NSMutableString *htmlstring = [NSMutableString string];
[htmlstring appendString:@"<html><head><link rel='stylesheet' href='style.css'/></head><body>"];
[htmlstring appendFormat:@"<p>%@</p>",feedItem.title];
[htmlstring appendFormat:@"<p>%@</p>",feedItem.description];
[htmlstring appendString:@"</body></html>"];
[webcell loadHTMLString:htmlstring baseURL:[NSURL fileURLWithPath:[[NSBundle mainBundle]bundlePath]]];

و}

وذلك بفضل

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

المحلول

وإلا هناك شخص ما لديه rebuttle، ولقد خلصت إلى أن UIWebView في UITableViewCell ليست فكرة جيدة. وإن كان ذلك، أنا لم تختبر مع محلية htmlString ...

نصائح أخرى

ولقد كان لدينا بعض النجاح باستخدام webviews في الخلايا. إذا كنت تريد الخلية لتلقي أحداث اللمس، تحتاج إلى تعيين الخاصية userInteractionEnabled على عرض ويب لNO. تحتاج أيضا إلى استخدام reuseIdentifier مختلفة لكل خلية، منذ عرض ويب يأخذ بعض الوقت لتحميل محتوياته وقد تحصل على استخدامها قبل أن يكون جاهزا.

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

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