SORU
13 Mayıs 2011, Cuma


UİWebView devre dışı bırakılması kullanıcı seçimi

Ben bir UİWebView içerik yüklemek ve bu hediye bir uygulamam var. Tamamen kullanıcı link tıklayın mümkün olmak istiyorum, çünkü devre dışı bırakmak kullanıcı etkileşimi edemem. Ben sadece kullanıcı seçimi devre dışı bırakmak gerekiyor. Kullanabileceğiniz bir yere İnternet'te buldum:

document.body.style.webkitUserSelect='none';

Bu gibi takarak çalıştım

[self.contentView stringByEvaluatingJavaScriptFromString:@"document.body.style.webkitUserSelect='none';"]; 

webViewDidFinishLoad:*

Ancak, bu işe yaramazsa. Hala ve web görünümü içinde metin kopyalamak mümkün duyuyorum.

Yanlış giden ne olabilir, fikri olan?

Güncelleme: Bu durum, yalnızca iOS 4.3 ile başlayan görünüyor

CEVAP
18 Mayıs 2011, ÇARŞAMBA


Burada seçimi devre dışı bırakmak için birkaç yolu vardır:

Mobil web belgeleri aşağıdakileri ekleyin

<style type="text/css">
* {
    -webkit-touch-callout: none;
    -webkit-user-select: none; /* Disable selection/copy in UIWebView */
}
</style>

Programlı olarak aşağıdaki Javascript kodu yük:

NSString * jsCallBack = @"window.getSelection().removeAllRanges();";    
[webView stringByEvaluatingJavaScriptFromString:jsCallBack];

Kopyala / Yapıştır kullanıcı menüsü devre dışı bırakın:

- (BOOL)canPerformAction:(SEL)action withSender:(id)sender 
{    
    if (action == @selector(copy:) ||
        action == @selector(paste:)||
        action == @selector(cut:)) 
    {
        return _copyCutAndPasteEnabled;
    }
    return [super canPerformAction:action withSender:sender];
}

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Monica Catral

    Monica Catra

    12 NİSAN 2009
  • RogerBuckChrist

    RogerBuckChr

    9 Temmuz 2011
  • SaMmM123

    SaMmM123

    3 Mayıs 2006