【问题标题】:How are images handled in a UIWebViewUIWebView 中如何处理图像
【发布时间】:2012-05-22 01:25:47
【问题描述】:

我正在考虑编写一些自定义 UITableViewCells,这些 UITableViewCells 将 UIWebView 喷入其中。我希望有几个图标将出现在 uiWebview 的 html 中,图像本地存储在设备上。

我想知道在为不同设备构建时,这些是否会被视为普通图像。 IE。遵循视网膜显示器的命名约定@2x.png?

是否将其转换为 uiwebviews?

【问题讨论】:

  • 你在单元格中绝对需要一个 UIWebView 吗?
  • 是和不,我的意思是尽管这对我来说似乎是额外的工作,但它会变成更少的工作,因为我的服务器将向我发送大量信息......我可以只需请求它预先格式化为 HTML 并让你的阿姨鲍勃。但是,如果我只是得到一大块数据,我必须格式化我自己并将其自然地组织到 tableviewcell 中.. 那有点工作.. 目前我并没有固定在任何特定的方式上.. 我是更多地研究它,这样我就可以和这里的那个人谈谈,给我提供数据。我目前正在编写我的自定义 uiwebview 单元格,它们看起来不错..

标签: iphone ios uiwebview uiimage


【解决方案1】:

UIWebView 可以解释和显示 HTML 告诉它的任何内容。简而言之,答案是否定的,webview 会将 EXACT 链接的图像显示到屏幕上。我已经在我开发的应用程序中实现了 UIWebViews,它只显示内部 HTML。我对这些所做的只是提供 2X 图像并让 webview 处理大小。

解决此问题的另一种方法是在内部识别(这是可能的)如果您正在使用视网膜显示器并提供调用 @2x 图像的 HTML。因此,您基本上需要提供 myhtml.html 和 myhtml@2x.html 并自己执行视网膜识别。

【讨论】:

    【解决方案2】:

    您需要使用 CSS 和媒体查询来告诉 Web 视图显示您的 @2x 图像。然后,您还需要明确设置所需的大小。

    因此,假设您的背景图像通常为 25 像素,@2x 为 50 像素,那么您会为视网膜显示做这样的事情:

    @media only screen and (-webkit-min-device-pixel-ratio: 2) {
        .nav-bar-button-right button .button-icon {
            background-image: url(myImage@2x.png);
            background-size: 25px 25px;
        }
    }
    

    根据您的使用情况进行调整,但就是这样。希望对你有帮助。

    【讨论】:

      猜你喜欢
      • 2012-07-30
      • 1970-01-01
      • 1970-01-01
      • 2017-05-25
      • 1970-01-01
      • 1970-01-01
      • 2015-05-15
      • 2011-02-05
      相关资源
      最近更新 更多