小编Nes*_*tor的帖子

什么是使iOS应用程序崩溃的可靠方法?

我想在用户执行一个真实用户不太可能意外执行的特定操作时故意让它崩溃,从而测试我的应用程序崩溃报告.

但是什么是使编译时不会产生警告的应用程序崩溃的可靠方法?

编辑:请注意,这个问题的许多看似明显的答案导致Cocoa捕获的异常,因此不会导致应用程序崩溃.

iphone objective-c ios

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

如何组合两个Boost几何变换器?

我有两个变形金刚,翻译和轮换如下:

namespace bg = boost::geometry;
namespace trans = bg::strategy::transform;

trans::translate_transformer<point, point> translate(px, py);
trans::rotate_transformer<point, point, bg::radian> rotate(rz);
Run Code Online (Sandbox Code Playgroud)

如何将它们合并为一个,这样我bg::transform每次都不必调用两次并使用中间变量?

c++ boost boost-geometry

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

使用LINQ处理大型数据集

每次我使用LINQ to SQL编写下面表单的程序时,我最终会得到一个程序,它在运行时会抓取越来越多的内存,并且在可能只有25,000条记录之后会消耗掉2GB的堆.我总是最终使用ADO.NET重写它.我究竟做错了什么?

澄清:这个问题与加工速度无关; 关于让它变得更快的答案是无关紧要的.

foreach (int i=0; i<some_big_number; i++)
{
    using (myDC dc = new myDC())  // my DataContext
    {
        myRecord record = (from r in dc.myTable where r.Code == i select r).Single();

        // do some LINQ queries using various tables from the data context
        // and the fields from this 'record'.  i carefully avoid referencing
        // any other data context than 'dc' in here because I want any cached
        // records to get disposed of when 'dc' gets …
Run Code Online (Sandbox Code Playgroud)

c# linq linq-to-sql c#-3.0

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

为什么对NSMutableAttributedString addAttributes的调用会崩溃?

我在addAttributes无法重现的栏位(EXC_BREAKPOINT)上经常出车祸。在我传递的NSRange上添加了检查,令人惊讶的是它仍然崩溃...非常感谢收到任何想法!

let boldAttributes : [NSAttributedStringKey: Any] = [.font: cellStyle.boldFont()]
if (nsrange.location >= 0 && nsrange.length > 0 && nsrange.location + nsrange.length <= myAttributedString.length) {
    myAttributedString.addAttributes(boldAttributes, range: nsrange)
}
Run Code Online (Sandbox Code Playgroud)

通过请求添加的崩溃日志:

#0. Crashed: com.apple.main-thread
0  MyApp                   0x10054ae38 specialized UIAccessorizedTextField.accessoryAttributedString(IndexPath, cellStyle : UIAccessorizedTextFieldCellStyle) -> NSAttributedString (UIAccessorizedTextField.swift:322)
1  MyApp                   0x10054b104 specialized UIAccessorizedTextField.collectionView(UICollectionView, cellForItemAt : IndexPath) -> UICollectionViewCell (UIAccessorizedTextField.swift:345)
2  MyApp                   0x10054860c @objc UIAccessorizedTextField.collectionView(UICollectionView, cellForItemAt : IndexPath) -> UICollectionViewCell (UIAccessorizedTextField.swift)
3  UIKit                          0x18b229f3c -[UICollectionView _createPreparedCellForItemAtIndexPath:withLayoutAttributes:applyAttributes:isFocused:notify:] + 356
4  UIKit                          0x18bb90b68 -[UICollectionView _prefetchItemsForVelocity:maxItemsToPrefetch:invalidateCandidatesOnDirectionChanges:] + …
Run Code Online (Sandbox Code Playgroud)

nsattributedstring core-text ios swift

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

像素坐标到3D线(opencv)

我在屏幕上显示的图像通过cvInitUndistortMap和cvRemap(已完成相机校准)未失真,用户点击图像中的某个功能.所以我有特征的(u,v)像素坐标,我也有内在矩阵和失真矩阵.

我正在寻找的是相机/真实世界坐标中的3D线的等式,用户点击的特征必须在该等式上.我已经在摄像机的图像平面和特征之间有垂直距离,所以我可以将它与上述方程式结合起来,给出空间特征的(X,Y,Z)坐标.

听起来很简单(反向内在矩阵或什么?)但我无法在任何地方找到逐步说明.首选C++或C#代码.

c# c++ opencv computer-vision camera-calibration

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

在任何 iOS 设备上复制 CVPixelBuffer

我很难想出在任何 iOS 设备上可靠地复制 CVPixelBuffer 的代码。我的第一次尝试效果很好,直到我在 iPad Pro 上尝试过:

extension CVPixelBuffer {
    func deepcopy() -> CVPixelBuffer? {
        let width = CVPixelBufferGetWidth(self)
        let height = CVPixelBufferGetHeight(self)
        let format = CVPixelBufferGetPixelFormatType(self)
        var pixelBufferCopyOptional:CVPixelBuffer?
        CVPixelBufferCreate(nil, width, height, format, nil, &pixelBufferCopyOptional)
        if let pixelBufferCopy = pixelBufferCopyOptional {
            CVPixelBufferLockBaseAddress(self, kCVPixelBufferLock_ReadOnly)
            CVPixelBufferLockBaseAddress(pixelBufferCopy, 0)
            let baseAddress = CVPixelBufferGetBaseAddress(self)
            let dataSize = CVPixelBufferGetDataSize(self)
            let target = CVPixelBufferGetBaseAddress(pixelBufferCopy)
            memcpy(target, baseAddress, dataSize)
            CVPixelBufferUnlockBaseAddress(pixelBufferCopy, 0)
            CVPixelBufferUnlockBaseAddress(self, kCVPixelBufferLock_ReadOnly)
        }
        return pixelBufferCopyOptional
    }
}
Run Code Online (Sandbox Code Playgroud)

上述在 iPad Pro 上崩溃,因为CVPixelBufferGetDataSize(self)它略大于CVPixelBufferGetDataSize(pixelBufferCopy),因此 memcpy 写入未分配的内存。 …

ios cvpixelbuffer

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

使用UINavigationController和Storyboard返回两个级别

我有一个故事板,有三个视图A,B和C(以及更多).从视图B,用户可以通过点击自动创建的左按钮栏项返回查看A. 我已经通过设置A导航项的Back Button属性将其上的标签更改为"取消".

C应该有相同的取消按钮,但返回查看B是没有意义的; 相反,它应该跳回到A.我知道如何以编程方式执行此操作但是我在哪里放置代码,以便在点击C的取消按钮时触发它?

iphone uinavigationcontroller ios

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

试图让垂直文本底部对齐

我试图实现的布局如下图所示: 替代文字

下面的 HTML 是许多没有奏效的尝试之一。该项目仅针对最新浏览器中的 HTML5,因此除了最新的 Chrome、Safari、Firefox 和(随风)IE9 测试版之外,不需要它在任何东西上工作。

<!DOCTYPE html>
<html>
<body>
    <div style="border: solid 1px red; width:600px; height: 600px">
        <span style="-webkit-transform:rotate(-

90deg);display:block;position:absolute;bottom:600px">My Vertical Text</span>
        <img src="http://www.gizmodo.com/assets/resources/2007/01/Bill-gates-mugshot.jpg"  

style="position:absolute;bottom:600px" />
    </div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

html css webkit

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

来自[NSArray count]的常量错误是无符号的

我没有注意到[NSArray计数]的后果,一遍又一遍地制造错误unsigned.今天的例子相对不寻常:

for (int i = -1; i < [myArray count]; i++) {
Run Code Online (Sandbox Code Playgroud)

这个循环从不执行!你需要(int)[myArray count].我通常的错误是:

for (int i = 0; i < [myArray count] - 1; i++) {
Run Code Online (Sandbox Code Playgroud)

如果数组为空,则此循环基本上永远执行,因为[myArray count]-1溢出了unsigned int.

我尽可能使用快速枚举,但在这个项目中,我经常需要在索引i-1i+1处理对象时引用对象i,它似乎并不适合它.避免这些错误的其他任何提示,除了不那么无能之外?

int for-loop objective-c nsarray

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

如果我在开发手机上安装iOS 4.1,我是否会被迫升级SDK?

我想在手机上安装iOS 4.1,但我不想在我的计算机上安装新的SDK版本,尤其是XCode 4即将推出.我仍然可以在设备上使用iOS 4.1的4.0.2 SDK进行调试吗?

iphone

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