小编Tom*_*ift的帖子

在ios5模拟器中支持storekit - 键盘不起作用?

哇,最后XCode 4.2/iOS5模拟器有StoreKit支持.

在我的应用程序中,我注意到当StoreKit要求AppleID /密码时,我可以使用模拟器屏幕键盘输入该信息,但不能通过Mac键盘输入.

这是正常的还是我还有其他问题?

iphone simulator storekit ipad ios

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

iOS5花式图标(表情符号?)用于特殊的unicode字符 - 不是我想要的

我一直认为,当我需要箭头或子弹或其他任何东西时,我可以在字符串中使用简单的标志性unicode字符.字形将呈现与字符串其余部分相同的颜色,并带有简洁明了的图标.我可以通过在XCode的"编辑"菜单上使用Mac的"特殊字符"对话框来预览它们的外观.

在iOS5中,这些字形以全彩色呈现,并且不简单和干净.我相信这些是表情符号图标?

我正在寻找这种变化的解释,理想情况下如何强制iOS5恢复到iOS2 - iOS4行为.

这是一个例子: @"? left arrow, right arrow ? airplane ?";

编辑:

显然,用于呈现text(drawAtPoint: / drawInRect:)的NSString UIKit扩展不会出现此行为.那么也许这是UILabel的事情?具体来说,我已经在UISegmentControl段按钮和UILabel中注意到了它.

unicode ios emoji ios5

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

自定义UIMenuController

嗨,我想在IPhone SDK3.x中创建自定义的气泡菜单,如剪切/复制/粘贴菜单.我知道它是UIMenuController,但它只提供标准的剪切/复制/过去菜单.任何人都知道如何制作类似这样的气泡菜单.任何示例和代码供参考?

iphone uimenucontroller

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

TableCell中的UITextView,如何为通用应用设置正确的宽度

我在tableView单元格中使用UITextView来编辑文本.

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

UITextField *textName = [[UITextField alloc] initWithFrame:CGRectMake(0, 0, 270, 24)];

[cell addSubview:textName];
[textName release];

}
Run Code Online (Sandbox Code Playgroud)

这有效,但在iPad上运行时则不正确.

我试图使用cell.contentView.frame.size.width来确定单元格的宽度

但对于iPhone和iPad,这总是会返回320.0

在横向模式下iPad上也不应该更大的单元格宽度?

张志贤

iphone uitableview uitextview universal ipad

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

计算OpenCV的findHomography的目标点

编辑:我现在发现这个类似的问题有一个非常详细的答案:

透视变形矩形的比例


我正在使用OpenCV findHomography()warpPerspective()方法"去歪斜"一张纸的照片.我有这个很大程度上工作,但我坚持一个细节.

我不明白该怎么做的部分是计算要输入的最佳目标点集findHomography().我知道我希望我的输出是矩形的,但我不知道矩形的宽度与高度的比例.我还希望调整输出矩形的大小,以便在应用变换时通过最小的输出图像缩放warpPerspective().我所拥有的是形成四边形的四个点,我想在源图像中进行变换.如何计算最佳尺寸的目标矩形?

opencv image-processing homography

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

NSKeyedArchiver失败了CLLocationCoordinate2D结构.为什么?

我不明白为什么我可以归档CGPoint结构而不是CLLocationCoordinate2D结构.归档者有什么不同?

平台是iOS.我正在模拟器中运行,并没有尝试过该设备.

// why does this work:
NSMutableArray *points = [[[NSMutableArray alloc] init] autorelease];
CGPoint p = CGPointMake(10, 11);
[points addObject:[NSValue valueWithBytes: &p objCType: @encode(CGPoint)]];
[NSKeyedArchiver archiveRootObject:points toFile: @"/Volumes/Macintosh HD 2/points.bin" ];

// and this doesnt work:
NSMutableArray *coords = [[[NSMutableArray alloc] init] autorelease];
CLLocationCoordinate2D c = CLLocationCoordinate2DMake(121, 41);
[coords addObject:[NSValue valueWithBytes: &c objCType: @encode(CLLocationCoordinate2D)]];
[NSKeyedArchiver archiveRootObject:coords toFile: @"/Volumes/Macintosh HD 2/coords.bin" ];
Run Code Online (Sandbox Code Playgroud)

我在第二次崩溃archiveRootObject,这条消息被打印到控制台:

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[NSKeyedArchiver …
Run Code Online (Sandbox Code Playgroud)

objective-c nskeyedarchiver ios

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

使用[FBSession openActiveSessionWithPublishPermissions:..]时出错

我正在更新应用程序以使用最新的Facebook SDK以获得对iOS6原生Facebook支持的访问权限.它目前使用的是相当旧版本的Facebook SDK.

该应用程序需要Facebook的"publish_actions"权限才能与Facebook进行唯一的操作.

我最初认为我可以使用[FBSession openActiveSessionWithPublishPermissions: ...]但是当用户在iOS6设置中配置了Facebook时,这在iOS6上失败了.由于这一要求,它失败了,来自Facebook文档:

请注意,要使用iOS 6本机身份验证,应用程序需要更改用户请求权限的方式 - 应用程序必须将其读取和写入权限请求分开.面向iOS的Facebook SDK支持这些功能,并帮助开发人员使用它们构建适用于多个iOS版本和设备配置的应用程序.

这是一个大型的PITA,IMO.我们的偏好是提示用户一次获得许可并完成它,但每个Apple/Facebook的"新"理想是在需要但尚未授予时在上下文中提示特定权限.

目前的计划是保留iOS5用户和未在"设置"中配置Facebook的iOS6用户的旧行为.并符合使用本机访问的iOS6用户的新双提示.

问题是,最好的方法是什么? 我应该如何检测Facebook SDK是否会选择iOS6本机登录与后备机制?我忽略了一些明显的东西吗

编辑:

杰拉尔德威廉姆让我走上正轨.他的解决方案几乎可以工作,除了在iOS5中没有ACAccountTypeIdentifierFacebook.此外,如果用户阻止设置中的FB访问应用程序,则accountsWithAccountType调用将返回一个空数组.

可以通过询问帐户类型匹配标识符"com.apple.facebook"来解决第一个问题 - 这将在iOS5上返回nil,在iOS6上返回真实帐户类型对象.

但第二个问题是无法解决的.我的新计划是始终在iOS6上以只读权限打开初始会话,并在上下文中根据需要提示发布权限.在iOS5上,我仍然会打开初始会话,指定所需的publish_actions权限.这是代码:

ACAccountStore* as = [[ACAccountStore new] autorelease]; 
ACAccountType* at = [as accountTypeWithAccountTypeIdentifier: @"com.apple.facebook"]; 
if ( at != nil ) {
    // iOS6+, call  [FBSession openActiveSessionWithReadPermissions: ...]

} else  {
    // iOS5, call [FBSession openActiveSessionWithPublishPermissions: ...] 
}
Run Code Online (Sandbox Code Playgroud)

ios facebook-ios-sdk

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

OpenCV构建问题,找不到ext/atomicity.h

<ext/atomicity.h>在构建包含OpenCV的项目时抱怨编译器错误.环境是针对iOS的Xcode 4.5.它为模拟器编译良好,但在为设备构建时失败.这是错误文本:

/Users/Nick/projects/ios/opencv2.framework/Headers/core/operations.hpp:65:16: fatal error: 'ext/atomicity.h' file not found
      #include <ext/atomicity.h>
Run Code Online (Sandbox Code Playgroud)

我正在使用opencv2.framework,使用cmake构建,使用此处的说明.

xcode opencv ios

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

当iPad应用程序进入后台时,关闭popover

嗨,我正在开发一个iPad应用程序,并且要求在应用程序进入后台时关闭所有弹出窗口(如果有的话).

我在网上做了一些研究,并没有找到一个简单的方法来做到这一点.我想在这里分享一些我的想法,看看是否有更好的方法来做到这一点.

1,在委托中取消 didEnterBakcground中的popovers.似乎不实用,因为我们必须添加所有popovers引用.

2,在当前窗口中递归遍历所有视图,以通过(class = _UIPopoverView)查找弹出视图.这看起来有点hacky和危险.

3,拥有弹出窗口的每个对象中设置UIApplicationDidEnterBackgroundNotificationgroundNotification并将其关闭.这似乎是合理的,但如果你的应用程序中有数百个弹出窗口,那真的很麻烦.

4,如何添加类别方法说 - (void)dismissWhenAppWillEnterBackground; 并注册通知.

或者有更容易的方法吗?

popover ipad uipopovercontroller ios

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

UITableView禁用"删除"确认

这类似于询问如何在没有确认的情况下滑动/删除的问题:

UITableView滑动删除没有确认

我的tableview包含设置了UITableViewCellEditingStyleDelete的单元格.当tableview处于编辑模式时,单元格会显示一个内部带有" - "的红色圆圈图标.要删除单元格,用户点击红色圆圈,将出现"删除"按钮.然后,用户必须点击删除哪个触发器tableView:commitEditingStyle:forRowAtIndexPath:.

我的一些行支持UITableViewCellEditingStyleInsert.在这种情况下,单元格显示一个绿色圆圈图标,里面带有"+".点击圆圈会tableView:commitEditingStyle:forRowAtIndexPath:立即调用.

我想tableView:commitEditingStyle:forRowAtIndexPath:在用户点击初始红圈图标时立即调用.也就是说,没有删除按钮步骤.

有任何想法吗?

有没有办法提供从左侧滑入的自定义编辑控件,如删除/插入?如果是这样,也许我可以使用这种机制?

iphone uitableview ios

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