zoukankan      html  css  js  c++  java
  • ios用lable和textview加载html标签

    根据应用需求,需要将后台传过来的html标签文本显示在页面上,首先想到的是用WKWebview显示可以实现,尝试用lable加载html,代码以及效果如下所示,发现表格的边框样式加载不出来

    NSString *str = @"罗梦槐,您好!您的借款项目【0903.按月3.02】债权转让已经完成,当前持有信息如下:<table  border='1' cellpadding='0' width='80%;' cellspacing='0'><tr><td align='center'>用户名</td><td align='center'>债权持有金额</td></tr><tr><td align='center'>13944831072</td><td align='center'>2200.00</td></tr><tr><td align='center'>13944831077</td><td align='center'>600.00</td></tr><tr><td align='center'>13944831078</td><td align='center'>200.00</td></tr><tr><td align='center'>13944831078</td><td align='center'>200.00</td></tr><tr><td align='center'>13944831078</td><td align='center'>1800.00</td></tr><tr><td align='center'>13944831078</td><td align='center'>800.00</td></tr><tr><td align='center'>13944831079</td><td align='center'>400.00</td></tr></table>";
        
    UILabel *lab = [[UILabel alloc] initWithFrame:CGRectMake(15, 100, K_SCREEN_WIDHTH-30, 300)];
    lab.numberOfLines = 0;
    [self.view addSubview:lab];
    
    NSAttributedString * attrStr = [[NSAttributedString alloc] initWithData:[str dataUsingEncoding:NSUnicodeStringEncoding] options:@{ NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType } documentAttributes:nil error:nil];
    lab.attributedText = attrStr;
    lab.font = [UIFont systemFontOfSize:15];

    然后抱着试试的心态用textview加载html标签发现边框样式可以显示出来了,应该是底层内部对lab和textview做了不同的处理,代码以及效果如下

    UITextView *textView = [[UITextView alloc]initWithFrame:CGRectMake(15, 400, K_SCREEN_WIDHTH-30, 300)];
    textView.userInteractionEnabled = NO;
    [self.view addSubview:textView];
    
    NSAttributedString * attrStr = [[NSAttributedString alloc] initWithData:[str dataUsingEncoding:NSUnicodeStringEncoding] options:@{ NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType } documentAttributes:nil error:nil];
    textView.attributedText = attrStr;
    textView.font = [UIFont systemFontOfSize:15];
    

     

    总结textView和lable都可以加载html标签内容,但是textview相比于lable可以同时加载出标签里的样式,当然通过webview也可以实现对html的加载但是相对更耗内存这里不建议使用,希望对遇到同样问题的朋友有帮助

  • 相关阅读:
    多线程
    Flume和 Sqoop
    Struts2部分
    hibernate学习笔记(一)
    idea创建普通的java小项目教程
    IntelliJ Idea 常用快捷键列表
    idea创建springMVC框架和配置小文件
    对于Git的总结
    关于jvm运行时时区的总结
    事务的总结笔记(详解很仔细),mysql事务隔离级别演示,,,
  • 原文地址:https://www.cnblogs.com/zk1947/p/9599424.html
Copyright © 2011-2022 走看看