2015-10-04 75 views
2

我試圖爲我的應用製作簡單的條款和條件視圖控制器。我正在計算一個帶有文本字段的ScrollView。條款和條件適用於iOS的視圖控制器

我正在運行的是顯示一個真正的長格式文本字符串與多個換行和引用的單詞和短語。

NSString @termsAndConditions = @"Terms and Conditions ("Terms") ... 
    ... 
    ..." 

別人怎麼處理這個?由於條款可以改變,一個程序如何輕鬆更新?

一個代碼示例將非常感激。

+0

的文本字段是一個壞的選擇來顯示只讀,靜態內容。 – rmaddy

回答

5

沒有一個正確的方法可以做任何事情。我過去所做的是讓客戶或撰稿人提供一個文字文件。對於某個維護內容的人來說,Word文檔非常棒,因爲對於非程序員來說這很容易。它還允許某人輕鬆地爲他們的服務條款內容指定一些簡單的格式。 IE瀏覽器。子彈列表,標題,鏈接等。

然後,我會使用在線doc2html轉換器來創建一個HTML文件。 (有很多這些在線,快速谷歌可以找到一個)然後我顯示在Web視圖中的服務或隱私策略視圖控制器的HTML文件。如果應用程序使用特定的字體,我只需使用文本編輯器來替換字體聲明即可。任何額外的樣式要求都可以在一個單獨的css文件中指定。例如,我剛纔所做的一項操作需要鏈接的特定顏色以適應應用程序的主題。

當它需要更新時,我通常可以在HTML中進行編輯,如果它們是幾個或從一個新的Doc文件重新生成它。

這裏是視圖控制器的一些示例代碼:

class TermsViewController: UIViewController { 

    @IBOutlet weak var termsWebView: UIWebView! 

    override func viewDidAppear(animated: Bool) { 
     super.viewDidAppear(animated) 

     loadTermsHTML() 
    } 


    func loadTermsHTML() { 

     //Load the HTML file from resources 
     guard let path = NSBundle.mainBundle(). 
          pathForResource("terms", ofType: "html") else { 
      return 
     } 

     let url = NSURL(fileURLWithPath: path) 

     if let data = NSData(contentsOfURL: url) { 

      termsWebView.loadHTMLString(NSString(data: data, 
      encoding: NSUTF8StringEncoding) as! String, baseURL: nil) 

     } 
    } 
}