小编And*_*riy的帖子

迭代字符串的行

我有一个像这样定义的多行字符串:

foo = """
this is 
a multi-line string.
"""
Run Code Online (Sandbox Code Playgroud)

这个字符串我们用作我正在编写的解析器的测试输入.解析器函数接收一个file-object作为输入并迭代它.它也next()直接调用方法来跳过行,所以我真的需要一个迭代器作为输入,而不是迭代.我需要一个迭代器,迭代遍历该字符串的各个行,就像file一个文本文件的行一样.我当然可以这样做:

lineiterator = iter(foo.splitlines())
Run Code Online (Sandbox Code Playgroud)

有更直接的方法吗?在这种情况下,字符串必须遍历一次以进行拆分,然后再由解析器遍历.在我的测试用例中没关系,因为那里的字符串很短,我只是出于好奇而问.Python为这些东西提供了许多有用且高效的内置插件,但我找不到任何适合这种需求的东西.

python string iterator

110
推荐指数
3
解决办法
11万
查看次数

如何处理临时NSManagedObject实例?

我需要创建NSManagedObject实例,用它们做一些事情,然后将它们丢弃或存储到sqlite db.问题是,我无法创建NSManagedObject未连接的实例,NSManagedObjectContext这意味着在我决定不需要我的数据库中的某些对象后,我必须以某种方式清理.

为了解决这个问题,我使用相同的协调器创建了一个内存存储,并且我使用assignObject:toPersistentStore.Now 将临时对象放在那里,如何确保这些临时对象无法获取数据,我从中获取数据两个商店的上下文共同点?或者我是否必须为此类任务创建单独的上下文?


UPD:

现在我正在考虑为内存存储创建单独的上下文.如何将对象从一个上下文移动到另一个上下文?只是使用[context insertObject:]?它在这个设置中可以正常工作吗?如果我从对象图中插入一个对象,整个图形是否也会插入到上下文中?

iphone core-data objective-c

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

基于视图的NSTableView,其行具有动态高度

我有一个基于视图的应用程序NSTableView.在这个表视图中,我有一些行,这些行的单元格内容包含一个NSTextField启用了自动换行的多行.根据文本内容,NSTextField显示单元格所需的行大小会有所不同.

我知道我可以实现该NSTableViewDelegate方法 - tableView:heightOfRow:返回高度,但高度将根据上面使用的自动换行确定NSTextField.这个词的包装NSTextField同样基于NSTextField它的宽度......这是由宽度决定的NSTableView.

Soooo ......我想我的问题是......对于这个有什么好的设计模式?似乎我尝试的一切都变成了一个令人费解的混乱.因为TableView需要知道细胞的高度来展示它们......并且NSTextField需要了解它的布局以确定自动换行...并且细胞需要知道自动换行来确定它的高度......这是一个圆形的混乱......它让我疯了.

建议?

如果重要,最终结果也将具有可编辑的NSTextFields大小,以调整其中的文本.我已经在视图级别上工作了,但是tableview还没有调整单元格的高度.我想一旦我得到了高度问题,我将使用 - noteHeightOfRowsWithIndexesChanged方法通知表格视图高度发生了变化......但是它仍然会向代表询问高度......因此,我的quandry.

提前致谢!

macos cocoa objective-c osx-lion

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

iOS 8 iPhone上的UIPopoverPresentationController

有谁知道是否UIPopoverPresentationController可以用来在iPhone上展示弹出窗口?想知道Apple是否在iOS 8上添加了此功能,试图为iPad和iPhone创建更统一的演示控制器.

不确定是否可以提出/回答Beta的问题.在那种情况下我会删除它.

iphone objective-c uipopovercontroller uipopover ios8

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

为什么AVCaptureSession输出错误的方向?

因此,我按照Apple的说明使用AVCaptureSession以下方法捕获视频会话:http://developer.apple.com/iphone/library/qa/qa2010/qa1702.html.我面临的一个问题是,即使相机/ iPhone设备的方向是垂直的(并且AVCaptureVideoPreviewLayer显示垂直相机流),输出图像似乎处于横向模式.我检查了imageFromSampleBuffer:示例代码中imageBuffer的宽度和高度,分别得到640px和480px.有谁知道为什么会这样?

谢谢!

iphone avcapturesession avcapturedevice

48
推荐指数
7
解决办法
5万
查看次数

什么是'UIView-Encapsulated-Layout-Width'约束?

我一直得到'无法同时满足约束'的例外(Xcode 5,iOS 7,设备和模拟器),其中列表中的一个约束是这样的:

"<NSLayoutConstraint:0x165b23d0 'UIView-Encapsulated-Layout-Width'
H:[StoryPlayerCell:0x165affc0(0)]>"
Run Code Online (Sandbox Code Playgroud)

我自己没有设置这个约束.它也不是NSAutoresizingMaskLayoutConstraint.但是它来自哪里?我怎么能摆脱它呢?

我不知道.我'UIView-Encapsulated-Layout-Width'在Apple的文档中找不到任何相关内容.即便是谷歌搜索也没有任何回报.

有什么建议?

PS:我在UICollectionView一个自定义子类中使用这个单元格UICollectionViewFlowLayout.也许这'Encapsulated-Layout'部分与此有关?

ios autolayout uicollectionview nslayoutconstraint uicollectionviewlayout

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

如何在iOS 6中正确使用ABAddressBookCreateWithOptions方法?

我试图了解iOS 6中的方法ABAdressBookCreateWithOptionsABAddressBookRequestAccessWithCompletion方法.

我能够找到的最多信息如下:"要请求访问联系人数据,请在调用该ABAddressBookRequestAccessWithCompletion函数后调用该ABAddressBookCreateWithOptions函数."

我相信这些方法应该提醒用户决定是否允许应用程序访问联系人,但是当我使用它们时,我看不到任何提示.

有人可以提供一些示例代码,说明如何在现实世界的例子中一起调用这些方法吗?我如何创建(CFDictionary)选项?我使用已弃用的ABAddressBookCreate方法使用代码,但需要更新到iOS 6以适应隐私问题.

在此先感谢任何可以解决问题的人!

iphone cocoa-touch objective-c abaddressbook ios

34
推荐指数
3
解决办法
3万
查看次数

如何将NSBezierPath转换为CGPath

我怎样才能转换NSBezierPathCGPath.

谢谢.

cocoa cgpath nsbezierpath

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

NSOutlineView - 自动扩展所有节点

我有一个NSOutlineView约束NSTreeController(如果这有所不同),我想扩展我的每个节点-awakeFromNib().

我还想以编程方式同时选择第一个节点的第一个子节点.这些类型的东西在表格视图中很简单,但大纲根本不与我合作.

谢谢,

丰富

cocoa nsoutlineview

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

Swift - 将MKAnnotationView添加到MKMapView

我想加入MKAnnotationView,MKMapView但我不能这样做......任何人都可以帮助我吗?

这是我的代码:

override func viewDidLoad() {
    super.viewDidLoad()
    locationManager.desiredAccuracy = kCLLocationAccuracyBest
    locationManager.startUpdatingLocation()
    var latitude:CLLocationDegrees = locationManager.location.coordinate.latitude
    var longitude:CLLocationDegrees = locationManager.location.coordinate.longitude
    var homeLati: CLLocationDegrees = 40.01540192
    var homeLong: CLLocationDegrees = 20.87901079
    var latDelta:CLLocationDegrees = 0.01
    var longDelta:CLLocationDegrees = 0.01
    var theSpan:MKCoordinateSpan = MKCoordinateSpanMake(latDelta, longDelta)
    var myHome:CLLocationCoordinate2D = CLLocationCoordinate2DMake(homeLati, homeLong)
    var myLocation:CLLocationCoordinate2D = CLLocationCoordinate2DMake(latitude, longitude)
    var theRegion:MKCoordinateRegion = MKCoordinateRegionMake(myLocation, theSpan)
    self.theMapView.setRegion(theRegion, animated: true)
    self.theMapView.mapType = MKMapType.Hybrid
    self.theMapView.showsUserLocation = true
    ///Red Pin
    var myHomePin = MKPointAnnotation()
    myHomePin.coordinate = myHome
    myHomePin.title …
Run Code Online (Sandbox Code Playgroud)

mkmapview mkannotation mkannotationview swift

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