小编Mic*_*gle的帖子

UIKeyboard避免和自动布局

考虑到重点关注iOS 6中的自动布局,以及Apple工程师的建议(参见WWDC 2012视频)我们不再直接操作视图框架,如何仅使用自动布局和NSLayoutConstraint来避开键盘?

更新

这看起来是一个合理的解决方案:键盘敏感布局(GitHub源)的一个例子,但我看到的一个潜在问题是当用户旋转设备并且键盘已经在屏幕上时会发生什么?

cocoa-touch objective-c uiviewcontroller ios ios6

27
推荐指数
4
解决办法
7607
查看次数

scrollToRowAtIndexPath无法正确处理最后一行

我遇到的问题UITableView是它在使用时似乎无法正确滚动到最后一行scrollToRowAtIndexPath:atScrollPosition:animated

这是我用来导致滚动的代码:

[self.tableView scrollToRowAtIndexPath:indexPath
                      atScrollPosition:UITableViewScrollPositionMiddle 
                              animated:YES];
Run Code Online (Sandbox Code Playgroud)

这是一个截图,显示结果(和问题!):

UITableView滚动问题截图

如您所见,最后一行(九月)未完全滚动到视图中; 底部几个像素被切断.

我尝试过使用UITableViewScrollPositionNone,UITableViewScrollPositionTop并且UITableViewScrollPositionBottom作为滚动位置,但它们都产生相同的结果.

我的单元格的自定义单元格高度61.0f当前在故事板中设置,但添加UITableViewDelegate方法tableView:heightForRowAtIndexPath:并返回相同的值也无济于事.

有什么办法,我可以得到表视图滚动到最后一排拥有它完全可见?

编辑:

为了清楚起见,我正在使用UINavigationController股票UITableViewController作为根视图控制器.

编辑2:

如果我rectForRowAtIndexPath:用来确定行的rect,它实际上会返回该行的正确rect.但是如果我然后scrollRectToVisible:animated:使用那个rect 调用,我会得到与上面相同的结果; 底部几个像素被切断.

iphone user-interface objective-c uitableview ios

16
推荐指数
1
解决办法
7065
查看次数

MPMediaItemArtwork返回错误大小的艺术作品

我看到了与MPMediaItemArtwork一致的问题,因为它返回的艺术作品大小与我要求的大小不同.

我正在使用的代码如下

MPMediaItem *representativeItem = [self.representativeItems objectAtIndex:index];
MPMediaItemArtwork *artwork = [representativeItem valueForProperty:MPMediaItemPropertyArtwork];
UIImage *albumCover = [artwork imageWithSize:CGSizeMake(128.0f, 128.0f)];
Run Code Online (Sandbox Code Playgroud)

这可以正常工作,除了返回的图像的大小总是{320.0f, 320.0f}即使我特别要求,{128.0f, 128.0f}并且由于图像大小超过预期的两倍而导致一些内存问题.

有没有其他人目睹这个特殊问题.你是怎么解决的?

苹果文档建议这应该像我期望的那样工作,而不是它实际上是如何工作的

iphone objective-c mpmediaitem ios

7
推荐指数
1
解决办法
4769
查看次数

iOS 5的Messages.app键盘附件查看行为

Messages.app截图

在iOS 5的Messages.app显示中,任何人都可以解释如何最好地模仿"附件视图"(在倒置逗号中,因为我实际上并不认为它是附件视图)的行为,因为我想要一个给人留下深刻印象的视图它固定在键盘顶部,但在键盘解除后仍保留在屏幕上.

iphone core-animation objective-c uiview ios

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