对齐UIWebView文本字体和文字对齐

问题描述:

我使用swift3,我试图在WebView中加载htmlString,我想使用右对齐文本对齐和显示html文本的自定义字体。如何解决这个问题?对齐UIWebView文本字体和文字对齐

我尝试这一点,但但不工作

func ShowHtmlText() { 

    webView.delegate = self 
    webView.loadHTMLString(infoText, baseURL: nil) 

} 

    func webViewDidFinishLoad(_ webView: UIWebView) { 

    infoText = "<p style=\"text-align:justify\">\(infoText)</p>" 

    infoText = infoText.replacingOccurrences(of: "</body>", with: "<style>body{background color: color !important;}</style></body>") 
    webView.stringByEvaluatingJavaScript(from: "document.getElementsByTagName('body')[0].style.fontFamily =\"Custom Font = \"Wyekan\"") 

    } 

,这是我的HTML文本:

<div> 
<p>علی شریعتی مَزینانی، مشهور به دکتر علی شریعتی&nbsp;(زادهٔ ۲ آذر ۱۳۱۲ در روستای کاهک، سبزوار &ndash; درگذشتهٔ ۲۹ خرداد ۱۳۵۶ در ساوت&zwnj;همپتون، انگلیس) نویسنده، جامعه&zwnj;شناس، تاریخ&zwnj;شناس، فیلسوف&nbsp;پژوهشگر دینی اهل ایران، از مبارزان و فعالان مذهبی و سیاسی و از نظریه&zwnj;پردازان انقلاب اسلامی ایران بود،&nbsp;که در سن۴۴سالگی&nbsp;در انگلستان درگذشت، و هم&zwnj;اکنون آرامگاه وی در مکانی نزد مقبرهٔ زینب کبری در دمشق سوریه است.</p> 

<p><strong>با پاسخ به سوالات این جشنواره و اخذ امتیاز، علاوه بر بهره مندی از جایزه 1.5 میلیون ریالی، به ازای هر 20 کدشاتس یک کد طلایی شرکت در قرعه کشی سه دستگاه خودروی تیبا هاچ بک&nbsp;&nbsp;به دست بیاورید.</strong></p> 

<p>نت رای می کوشد تا با برگزاری این جشنواره، شما را با این شخصیت ارزنده، بیشتر آشنا کند.</p> 
</div> 

<p><strong><span style="font-size: 18px;"><span style="color: rgb(0, 0, 255);">نکات:</span></span></strong></p> 

<p style="text-align: justify;"><span style="font-size: 14px;">- &nbsp;هر پاسخ صحیح=5 امتیاز&nbsp;و &nbsp;پاسخ غلط=2 امتیاز، امتیازات بیشتری کسب کن و شانست رو بالا ببر.<br /> 
- &nbsp;اگه صد در صد مطمئن هستی&nbsp;که&nbsp;</span><span style="font-size: 14px;">سوالی ایراد داره فقط کافیه که&nbsp;گزارش خطا&nbsp;بدی ما بررسی میکنیم و اگه غلط بود سوال جایگزین واست میفرستیم.<br /> 
- .</span></p> 

<p style="text-align: justify;"><span style="font-size: 14px;">​- عجله نکن و برای پیدا کردن جواب</span><span style="font-size: 14px;">&nbsp;سوالاتت خوب جستجو کن</span></p> 

我将不胜感激任何帮助。

非常感谢。

+0

首先要装入注入代码的体内后的页面,您应该拨打的JavaScript - (空)webViewDidFinishLoad:(UIWebView的*)webView的{所以它有DOM准备 – teixeiras

+0

为了有更好的效果我将在htmlString与背景颜色或字体这样的CSS注入:[htmlString stringByReplacingOccurrencesOfString:@”

试试这个。

func ShowHtmlText(){ 
     self.webView.delegate = self 
     self.webView.loadHTMLString(updateDataWithFont(infoText), baseURL: nil) 
    } 

    func updateDataWithFont(data:String)->String{ 
     return String(format: "<html><body><span style=\"font-family:%@;text-align:justify\">%@</span></body></html>","Wyekan",data) 
    } 

请删除webViewDidFinishLoad代码

+0

我尝试这个,但没有改变任何事情。 – ava