2015-12-28 2 views
0

Я пытаюсь вытащить бинарный файл (из Salesforce) и отобразить его в UIWebView. Тем не менее, он выглядит пустым. Вот код, я в настоящее время работаю:Рендеринг двоичных ms/doc в UIWebView пуст

class SRAFileViewController: UIViewController { 
    var webView: UIWebView! 
    var fileData: NSData! 
    var fileType: String! 

    convenience init(fileData: NSData!, fileType: String!, title: String!){ 
     self.init() 
     self.fileType = fileType 
     self.fileData = fileData 
     self.title = title 
    } 

    override func viewDidLoad() { 
     self.navigationItem.rightBarButtonItem = UIBarButtonItem(barButtonSystemItem: UIBarButtonSystemItem.Done, target: self, action: "close") 
     self.view.backgroundColor = UIColor.whiteColor() 
     self.navigationItem.title = self.title 
     webView = UIWebView(frame: self.view.frame) 
     webView.delegate = self 
     let tempData = NSData(bytes: fileData.bytes, length: fileData.length) 
     webView.loadData(tempData, MIMEType: self.fileType, textEncodingName: "UTF-8", baseURL: NSURL(string: "http://localhost")!) 
    } 

    func close(){ 
     self.dismissViewControllerAnimated(true, completion: nil) 
    } 
} 

Однако UIWebView приходит пустым.

Значение fileData является <d0cf11e0 a1b11ae1...00000000 0000c700 00000000> и fileType является application/msword

Кто-нибудь есть идеи, как получить это правильно отображался?

ответ

1

Вы должны увидеть, по крайней мере, двоичные данные своего файла, если веб-просмотр не может его правильно отобразить.

Однако

  1. self.view.frame не может быть правильно установлен в viewDidLoad. Попробуйте установить рамку webView в viewWillAppear.
  2. Я не вижу, где вы добавили webView в view.
+0

Черт, думаю, я слишком долго смотрел на код. Забыл добавить его в представление. Это для второй пары глаз. Проголосовать. – jsookiki

Смежные вопросы