- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我尝试了人类已知的每一种排列,但我无法让 UIWebView 在 iPad 的模态表单 View 中正确调整大小。网页仍然显示 768 点的完整 iPad 纵向宽度。
我在哪里以及如何告诉 UIWebView 显示宽度 540 点?
我认为“scalesPageToFit”应该这样做,但它不起作用。
我尝试将 Web View 设置为表单 View 的大小,即带有导航和状态栏的 540 x 576。不过高度无关紧要。
我尝试将 UIWebView 添加到 Storyboard中的 UIView,并设置了所有调整大小。然后我删除了 UIWebView 并以编程方式添加了它。
- (void)viewDidLoad
{
[super viewDidLoad];
CGRect aFrame = self.view.frame;
if (IS_IPAD)
{
aFrame = CGRectMake(0, 0, FORM_VIEW_WIDTH, FORM_VIEW_HEIGHT);
}
_webView = [[UIWebView alloc] initWithFrame:aFrame];
[_webView setOpaque:NO];
[_webView setDelegate:self];
[_webView setScalesPageToFit:YES];
self.view = _webView;
...
}
我也尝试在 viewDidAppear 中加载(除了 viewDidLoad、viewWillAppear 等)
- (void)viewDidAppear:(BOOL)animated
{
[super viewDidAppear:animated];
[[self webView] setFrame:CGRectMake(0, 0, FORM_VIEW_WIDTH, FORM_VIEW_HEIGHT)];
[[self webView] setScalesPageToFit:YES];
NSURL *webURL = [NSURL URLWithString:@"http://www.google.com"];
NSURLRequest *request = [NSURLRequest requestWithURL:webURL cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:5.0f];
[[self webView] loadRequest:request];
}
感谢任何建议。
最佳答案
这一直在我身上发生。我发布了一个冗长的问题,两秒钟后我找到了答案。
无论如何,有人在这里发布了这个问题的解决方案: UIWebView -- load external website, programmatically set initial zoom scale, and allow user to zoom afterwards
但是,我修改了脚本以将宽度设置为 iPad 宽度:
- (void)webViewDidFinishLoad:(UIWebView *)webView
{
NSString* js =
@"var meta = document.createElement('meta'); "
@"meta.setAttribute( 'name', 'viewport' ); "
@"meta.setAttribute( 'content', 'width = 540px, initial-scale = 1.0, user-scalable = yes' ); "
@"document.getElementsByTagName('head')[0].appendChild(meta)";
[[self webView] stringByEvaluatingJavaScriptFromString: js];
}
注意'width = 540px, initial-scale = 1.0, user-scalable = yes'部分
我将宽度更改为表单宽度并将比例更改为 1.0。
我还需要处理iPhone,所以接下来我会针对它进行调整。我认为可能只有 iPad 表单 View 才需要此修复。
更新:答案是短暂的。如果我加载任何其他页面,大小调整将再次被取消。回到第一点。
解决方案:此 View 只需要访问我开发的几个网页。因此,我通过向每个网页添加元标记来更新我需要访问的几个网页。我只需要访问这些页面,所以这是我打算采用的解决方案。这意味着我需要以某种方式将 iPad 的视口(viewport)宽度设置为 540px。接下来我会解决这个问题。
<meta name="viewport" content="width:540, initial-scale=1, maximum-scale=1">
关于ios - 如何在 UIModalPresentationFormSheet 中调整 UIWebView 的大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15826714/
我正在尝试使用 UIModalPresentationFormSheet 在 iPad 应用程序中显示模态视图 Controller 查看样式。我正在寻找类似于邮件应用程序的新消息 UI/动画的东西。
如果这是一个明显的问题,请原谅我,我是个新手。 我有一个模态视图,我设置了自定义大小和圆角: - (void)viewWillLayoutSubviews{ [super viewWillLa
基本上,我希望模态表单是透明的,这样我就可以看到它后面的 UIView(它是全屏的)。 这可能吗?将 UIView 设置为不透明并且 [UIColor clearColor] 的 background
我有一个 UIViewController 实现 - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)inte
我正在为 iPad 制作一个应用程序,它主要是一个带有设置按钮的 UISplitViewController 应用程序,该按钮使用 UIModalPresentationFormSheet 打开设置
我正在使用 UIModalPresentationFormSheet 显示自定义大小的模态,如下所示: UIViewController *viewController = [[UIViewC
这个问题在这里已经有了答案: iOS: Why do I have white, rounded corners on my modal view? (9 个回答) 关闭 9 年前。 我尝试在深色背
我有一个与 UIModalPresentationFormSheet 一起显示的 UIViewController。因此,当键盘可见时,它会一直保持可见状态,直到 View Controller 被关
我想在 UIModalPresentationPageSheet View 的一角添加一个 float 关闭 (x) 按钮。效果如下: 但是将它添加到父 View 会使它出现在页面表后面(并且也无法点
我有一个 View Controller (A),它以表单形式 (UIModalPresentationFormSheet) 的形式呈现另一个 View Controller (B)。 现在我想关闭
如何在 iPhone 上制作模态视图的呈现样式 UIModalPresentationFormSheet(或类似的东西)? 提前致谢! 最佳答案 您不能使用内置框架。 您必须编写自己的代码以模态方式显
我正在尝试将模态视图 Controller 显示为 UIPresentationFormSheet。 View 出现了,但我似乎无法调整它的大小。我的 XIB 具有适当的高度和宽度,但是当我这样调用它
我有兴趣知道如何在使用 modalPresentationStyle 的 UIModalPresentationFormSheet 时调整 View 大小,它看起来有固定的大小,所以我想知道是否有人出
我使用UIStoryboardSegue - (void)perform { [(UIViewController *)self.destinationViewController setMo
我在 iPad 中使用以下代码使用 UIModalPresentationFormSheet 执行首选项功能。 self.preferencesViewController = [[Preferenc
我正在使用以下代码来显示屏幕/ View Controller 。 SearchParams *nxt=[[SearchParams alloc] initWithNibName:@"SearchPa
我们的 iPad 版本中有下一个问题。 我在 UITabBar 中有一个 NavigationController。我想显示一个外观与电子邮件表单相似的表单。 我使用相同的代码来显示居中的模型: //
默认情况下,iPad 模态表单获得圆角。在一些 Apple 的应用程序中,例如 iTunes,表单具有完美的方角。是否有一种相对简单的方法可以删除不会让我被 App Store 拒绝的圆角半径? 最佳
在 iPhone 6+ 上模态显示 ViewController,样式为 UIModalPresentationFormSheet根据方向打开不同。 在纵向模式下,它看起来像普通的 Modal(与较小
在我的 iPad 应用程序中,我有一个 UIButton,它调用 IBAction 来调用 View Controller 作为模态来显示视频。我希望模态显示为 720x405,这部分看起来没问题。这
我是一名优秀的程序员,十分优秀!