5

ハードコーディングされた HTML ページを表示するフォーム シート セグエがあります。今、私は2つの部分の問題を抱えています。最初の問題は

 <CENTER><H1>A Simple Sample Web Page</H1><H4>By Frodo</H4>
<H2>Demonstrating a few HTML features</H2></CENTER>

のように表示されます

ここに画像の説明を入力

<CENTER>その場合はタグを変更できます<left>が、それは私のオプションを制限します。このコンテンツを画面の中央に位置合わせの問題なしに表示するにはどうすればよいですか?

質問の 2 番目の部分は、色やコンテンツへのリンクを埋め込む方法です。オンライン ""FFFFFF">\n"で次のエラーが表示Expected ':'され、オンラインで行"<a href="http://somegreatsite.com">\n"の半分が緑色で、画面上のコメントのように見えます。これは、XCode によって実行されないことを意味します。

私の完全なコードは次のようなものです:

- (void) createWebViewWithHTML{
    //create the string
    NSMutableString *html = [NSMutableString stringWithString: @"<html><head><title></title></head><body style=\"background:transparent;\">"];

    //continue building the string
    [html appendString:@"<BODY BGCOLOR="
     ""FFFFFF">\n"
     "<CENTER><IMG SRC="clouds.jpg" ALIGN="BOTTOM">
     "</CENTER> \n"
     "<HR>\n"
     "<a href="http://somegreatsite.com">\n"
     "Link Name</a>\n"

     "is a link to another nifty site\n"

     "<H1>This is a Header</H1>\n"

     "<H2>This is a Medium Header</H2>\n"

     "Send me mail at <a href="mailto:support@yourcompany.com">\n"

     "support@yourcompany.com</a>.\n"

     "<P> This is a new paragraph!\n"

     "<P> <B>This is a new paragraph!</B>\n"

     "<BR> <B><I>This is a new sentence without a paragraph break, in bold italics.</I></B>\n"

     "<HR>\n"];
    [html appendString:@"</body></html>"];

    //instantiate the web view
    webView = [[UIWebView alloc] initWithFrame:self.view.frame];


    //make the background transparent
    [webView setBackgroundColor:[UIColor clearColor]];

    //pass the string to the webview
    [webView loadHTMLString:[html description] baseURL:nil];

    //add it to the subview
    [self.view addSubview:webView];

} 

編集::ストーリーボードの写真を追加

ここに画像の説明を入力

では、正しい位置合わせを行い、色/リンクを正しく埋め込むにはどうすればよいですか?

4

1 に答える 1

3
  1. UIWebView適切なサイズがあるかどうかを確認してください。画面より大きく見えます。

  2. ハードコードされた文字列の " の前に \ を置きます。例:

    NSString *testString="This is a \"Test\"";
    

    結果は

    これはテストです"

お役に立てれば

于 2012-10-08T15:11:13.470 に答える