小编Gen*_*ike的帖子

使用iOS6在Storyboard中旋转UIView

我有一个UILabel我想旋转180度,所以文字显示颠倒.我做了一些搜索,发现这个问题涵盖了旋转CGAffineTransformMakeRotation.

有没有办法在我身上旋转它UIStoryboard?标签总是会出现相同的固定旋转,所以最好让它在我的故事板中以与运行时相同的方式显示.我发现这篇文章说这是不可能的,但这是一个相当古老的帖子(我认为是故事前的).当然,如果不是故事板,我可以CGAffineTransformMakeRotation在我链接的其他问题中使用viewDidLoad.

ios uistoryboard ios6

4
推荐指数
1
解决办法
5166
查看次数

获取UIScrollView的所有子视图

我需要获取一个包含所有子视图的数组UIScrollView.现在我正在使用

NSArray *subviews = [myScrollView subviews];
Run Code Online (Sandbox Code Playgroud)

但这似乎只返回代码运行时可见的子视图.我需要在UIScrollView的整个范围内的所有子视图,甚至是当前隐藏的那些(如在屏幕外).我怎么会这样?

从本质上讲,我正在寻找像a的contentSize属性之类的东西UIScrollView,除了只返回它的大小,UIScrollView如果它足够大以显示它的所有内容,我希望它返回内容本身.

编辑:我想我已经弄明白了:滚动视图这不起作用实际上是UITableView- 而且我认为它会消除掉我屏幕上的细胞,这就是为什么它们没有显示出来的原因.我打算做一些测试来证实.

objective-c uiscrollview ios

4
推荐指数
1
解决办法
8837
查看次数

视图是水平和垂直模糊的,具有复杂的布局

UIViewController我的故事板上有一个水平左右两个子视图.我添加了约束来将前沿和后沿修复为常量(20分),并添加另一个约束来保持宽度相等.如果我假设以下内容,应该可以计算每个子视图的宽度需要:

  • 子视图不重叠
  • 没有其他意见(水平,至少)
  • 屏幕的宽度(超视图)是已知的

但是,XCode给了我一个警告,我的观点是横向模糊的.我猜这意味着XCode没有做出这些假设之一,但它是哪一个?有没有办法让我指示XCode做出这个假设?

编辑:好的,玩了一下并得到警告消失,但看起来它没有做出第一个假设 - 它只是设置每个子视图的宽度superview.width - 40,并愉快地将一个视图埋在另一个视图之下.所以问题是如何阻止它们重叠?

编辑2:好的,我的实际屏幕比我的简单示例复杂得多.这是我得到的:

在此输入图像描述

所以在这个设置中我有4个垂直和水平交错的视图.我希望蓝色,红色和紫色的视图都是一样的subview.frame.size.width = superview.width - 60.蓝色和紫色在左列中排列,红色在右列中是单独的,并且所有间隙(两列之间以及每列之间和它的最近边缘)处于恒定(20点).这三个表有一个可变的高度,我将按照James的答案中的描述以编程方式设置.在底部是一个粉红色的视图,拉伸屏幕的宽度(减去间隙),并坐在紫色或红色视图下方的恒定20点,以较低者为准(我试图通过给它一个每个视图的间距约束> = 20,我希望它会为其中一个选择正好20个).由于所有高度都是动态的,并且可能不一定同时适合屏幕,因此我将他们的超级视图UIScrollView改为正常而不是正常UIView.

完成所有操作后,我仍然会收到警告,我的所有4个视图都是水平模糊的,并且粉红色条是垂直模糊的.我认为它很难实现应该接下来的东西,这就是为什么它认为它是横向模糊的.而且我认为不是选择将粉红色的条形物放置在紫色或红色视图下方20个点以下,这就是为什么它认为它是垂直模糊的.任何人都可以确认或否认这些怀疑吗?或建议一个方法呢?当我最后运行它时,我得到了这个(我将滚动视图的背景变为黄色,你在故事板截图中无法分辨):

在此输入图像描述

xcode ios autolayout ios7

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

我需要返回tableView:heightForRowAtIndexPath?

我有一个带有几个表的视图控制器.我希望一张桌子比其他桌子有更大的单元格.现在,我有:

- (CGFloat *)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
    if (tableView != myBigTable)
    {
        return 44;
    }
    else
    {
        return 88;
    }
}
Run Code Online (Sandbox Code Playgroud)

我收到警告说

不兼容的整数到指针转换从结果类型为'CGFloat*'的函数返回'int'(又名'float*')

当我运行它时,它会崩溃.

我也尝试过:

  • return 44.0 - double to float*转换的错误
  • return 44.0f - 浮动到浮动*转换的错误
  • CGFloat *height; height = 44; return height; - 与直接返回我想要的值相同的错误

我找了类似于[CGFloat floatWithDouble:44.0];NSNumber的东西,但我没有找到任何东西.我应该使用什么?

objective-c cgfloat

0
推荐指数
1
解决办法
910
查看次数