相关疑难解决方法(0)

开发像Facebook的新iOS应用程序中的侧边菜单的最佳方法是什么?

侧面滑动菜单似乎正在成为一种更常见的界面元素,因为更多信息被塞进每个iPhone应用程序中.Facebook已将其纳入最新版本,新的Gmail应用程序似乎也包括在内.我想知道是否有人想到最有效的方式来开发这样的东西,因为它正在成为一个更常见的界面元素.虽然我对如何构建这个有自己的想法,但我很想知道其他人的想法.

Facebook刷卡导航

cocoa-touch objective-c ios

155
推荐指数
9
解决办法
9万
查看次数

获取对iOS应用程序中最顶层视图/窗口的引用

我正在创建一个可重用的框架,用于在iOS应用程序中显示通知.我希望将通知视图添加到应用程序中其他所有内容的顶部,有点像UIAlertView.当我初始化侦听NSNotification事件并在响应中添加视图的管理器时,我需要获得对应用程序中最顶层视图的引用.这就是我现在所拥有的:

_topView = [[[[UIApplication sharedApplication] keyWindow] subviews] lastObject];
Run Code Online (Sandbox Code Playgroud)

这适用于任何iOS应用程序,还是更安全/更好的方式来获得顶视图?

objective-c uiview uiwindow ios

97
推荐指数
4
解决办法
10万
查看次数

添加到窗口后自动调整UIView大小

注意:这可能是添加到根视图控制器时Subview不自动调整大小的副本


我有一个iPad应用程序在其主窗口中切换不同的视图.视图切换代码如下所示:

- (void)switchToViewController:(UIViewController*)viewController {
    if (currentViewController != viewController) {
        [currentViewController.view removeFromSuperview];
        currentViewController = viewController;
        [window addSubview:viewController.view];
    }
}
Run Code Online (Sandbox Code Playgroud)

问题是当新视图(UISplitView)以横向方向显示时,其大小不足以填充整个窗口.右边有一个空的黑色大空间.看起来视图只有768像素宽,而不是景观窗口的1024像素宽度.

如果我将设备旋转为纵向然后返回横向,则视图会自行调整大小.

如果设备处于纵向,一切正常.如果它是我展示的第一个视图,UISplitView也会正确调整大小.如果我在横向显示另一个视图后切换到它,则只会出现此问题.

那么,是否有某种方法可以强制iPhone OS在将视图添加到窗口后调整视图大小?

我已经打过电话sizeToFit,和setNeedsLayout.我也尝试将视图设置为bounds窗口bounds,我尝试将其设置frame为匹配上一个视图的帧.

iphone uiview uiwindow ipad

6
推荐指数
2
解决办法
1万
查看次数

标签 统计

ios ×2

objective-c ×2

uiview ×2

uiwindow ×2

cocoa-touch ×1

ipad ×1

iphone ×1