SORU
13 NİSAN 2009, PAZARTESİ


Nasıl UİWebView yükseklik içeriğe göre belirlenmesi için, değişken yükseklik UİTableView içinde?

this question cevap anlatıldığı gibi değişken yükseklik satır ile UITableView Bir oluşturmak için çalışıyorum

Benim sorunum UIWebView farklı (statik olarak yüklenen içerik) bir ben doğru yüksekliğini içeriğine göre hesaplamak için nasıl anlamaya olamaz her hücre içerir. Bunu yapmanın bir yolu var mı? Bu gibi şeyler denedim:

   (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
       WebViewCell *cell = (WebViewCell*)[self tableView:tableView cellForRowAtIndexPath:indexPath];
       [cell setNeedsLayout];
       [cell layoutIfNeeded];
       return cell.bounds.size.height;
    }

Hücreleri kendilerini sadece UIWebView içeren UITableViewCell olan bir hali yüklenir. (Ayrıca eğer hücreler sadece html içeriği, en büyük kendileri, değişken yükseklik daha hoş olurdu gerçi) ayarlanabilir eğer iyi olurdu.

CEVAP
15 NİSAN 2009, ÇARŞAMBA


Bu kod muhtemelen tablo görünümünü kullanmak için çok yavaş, ama işe yarıyor. UİWebView DOM için doğrudan erişim sağlar gibi, herhangi bir alternatif yok gibi gözüküyor, değil mi.

Görünümü denetleyicisi viewDidLoad ben yükleme tamamlandığında bir web görünümü ve bazı HTML öğesi yüksekliği dönmek için bazı javascript yük çalıştırın.

- (void)viewDidLoad
{
    [super viewDidLoad];
    webview.delegate = self;
    [webview loadHTMLString:@"<div id='foo' style='background: red'>The quick brown fox jumped over the lazy dog.</div>" baseURL:nil];
}

- (void)webViewDidFinishLoad:(UIWebView *)webView
{
    NSString *output = [webview stringByEvaluatingJavaScriptFromString:@"document.getElementById(\"foo\").offsetHeight;"];
    NSLog(@"height: %@", output);
}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • NYLON Video

    NYLON Video

    11 Aralık 2006
  • taliajoy18

    taliajoy18

    12 Temmuz 2011
  • Tinkernut

    Tinkernut

    28 Aralık 2006