的WebView插入/修改内容动态

问题描述:

在我的应用程序,我使用的WebView来显示内容, 现在是可以动态修改的内容,要求是这样的,的WebView插入/修改内容动态

我会得到网络信息并且根据他们我需要设置样式/字体/属性或可能我需要追加当连接的设备没有响应新的文本,

到目前为止我用下面的代码,

-(void)modifyString:(NSString *)string{ 
    [sourceString stringByAppendingString:errorString :string] 
} 

    -(void)reloadPage{ 

    [[pWebView mainFrame] loadHTMLString:htmlString baseURL:nil]; 
    } 

我不'牛逼认为它正确的方式来实现它,我试图利用

[pWebView replaceSelectionWithMarkupString:@"<html><body><p>Hi there </p></br></body></html>”]; 

,而是因为,我没有选择,并选择我的问题是 如何设置选择什么也不显示?

亲切的问候

罗汉

没关系 通过这种方式
在AwakeFromNib方法解决了这个问题,添加以下代码,

-(void)awakeFromNib{ 

    NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"about:blank"]]; 

    //URL Requst Object 
    NSURLRequest *requestObj = [NSURLRequest requestWithURL:url]; 

    //Load the request in the UIWebView. 
    [[pWebView mainFrame ]loadRequest:requestObj]; 
    [pWebView setEditable:YES]; 
    [pWebView setNeedsDisplay:YES]; 

} 

并添加该功能到主体元件附加,

-(void)appendTagToBody:(NSString *)tagName InnerHTML:(NSString *)innerHTML 
{ 
    // Gets a list of all <body></body> nodes. 
    DOMNodeList *bodyNodeList = [[[pWebView mainFrame] DOMDocument] getElementsByTagName:@"body"]; 

    // There should be just one in valid HTML, so get the first DOMElement. 
    DOMHTMLElement *bodyNode = (DOMHTMLElement *) [bodyNodeList item:0]; 

    // Create a new element, with a tag name. 
    DOMHTMLElement *newNode = (DOMHTMLElement *) [[[pWebView mainFrame] DOMDocument] createElement:tagName]; 

    // Add the innerHTML for the new element. 
    [newNode setInnerHTML:innerHTML]; 

    // Add the new element to the bodyNode as the last child. 
    [bodyNode appendChild:newNode]; 
} 

每当想改变的内容,

-(void)appendString:(NSString *)pString{ 
    [self appendTagToBody:@"div" InnerHTML:@"<div><p> Hi there </p></div>"]; 
    [self setNeedsDisplay:YES]; 
} 
+1

这似乎并没有导致与''

加载''