2012-09-18 70 views
0

是否可以將文本添加到uiwebview並更改此視圖中的文本和顏色而不使用單獨的html文件?所以我在switch語句中定義html文件中的whats?我現在使用標籤來做這件事,但我不能在標籤中使用多種顏色,所以我需要使用html,因爲核心文本看起來相當複雜。在運行時在代碼中將html添加到運行時代碼中,基於開關

switch (counter) 
{ 
    case 0: 
     titleLabel.text = @"needs to be more than one colour"; 
     break; 
    case 1: 
     titleLabel.text = @"needs to be more than one colour"; 
     break; 

等等...

我可以以某種方式在這些交換機中的標籤的HTML文件中的代碼中定義什麼,而不是單獨的HTML文件?如果是的話,我會如何做到這一點?

乾杯,

劉易斯

+0

我想向你介紹Javascript :)。其實我不會因爲這是一種痛苦,但這是與HTML內容交互的唯一途徑。 – borrrden

回答

1

假設你的HTML包含一個名爲myCssClass在您指定顏色的CSS類和標籤:

<label id="myTextElement">A Label</label> 

您可以通過編程執行JavaScript來設置不同CSS class using code like:

UIWebView *webView; 
. 
. 
. 
[webView stringByEvaluatingJavaScriptFromString:@"document.getElementById(\"myTextElement\").className = \"myCssClass\";"]; 

雖然老實說,如果你在CoreText上觀看WWDC2012視頻,你可能不會感到恐懼......

+0

我已經下載了視頻,現在有一塊手錶,謝謝。我不可能在obj-c中定義整個html文件,而不是使用物理html文件? – dev6546

+1

您可以直接從字符串[UIWebView loadHTMLString:baseURL:]設置webview的內容。你需要內聯CSS樣式。然後你可以通過javascript與內容交互 – CSmith