小编dan*_*ard的帖子

从NSMutableArray中删除对象时崩溃

在我的iphone项目(启用ARC)中,我有一个nsmuatble数组,其中包含大约5个托管对象(从核心数据中检索),在某些情况下,我需要从中删除所有对象nsmutablearray

我使用了以下方法来删除对象,但在崩溃日志的两种情况下它都崩溃了 -[__NSArrayI removeObject:]: unrecognized selector sent to instance 0xa391640

if (surveys && [surveys count]>0)
        {

            [surveys removeAllObjects];
            surveys = [[NSMutableArray alloc]init];
        }
Run Code Online (Sandbox Code Playgroud)

我也试过

if (surveys && [surveys count]>0)
        {
            for(Survey *obj_Survey in surveys)
            {
                [surveys removeObject:obj_Survey];
            }

            surveys = [[NSMutableArray alloc]init];
        }
Run Code Online (Sandbox Code Playgroud)

任何人都可以告诉我如何清空该阵列,任何建议都会被提前感谢

iphone objective-c nsmutablearray removeall ios

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

Objective-C的"obj performSelector"vs objc_msgSend()?

通过Apache Cordova的源代码,我遇到了两行令我困惑的代码:

    //[obj performSelector:normalSelector withObject:command];
    objc_msgSend(obj,normalSelector,command);
Run Code Online (Sandbox Code Playgroud)

从Apple的文档来看,这两种方法之间似乎没有太大区别.

id objc_msgSend(id theReceiver,SEL theSelector,...) 将具有简单返回值的消息发送到类的实例.

- (id)performSelector:(SEL)aSelectorwithObject:(id)anObject 以对象作为参数向接收者发送消息.(需要)

这两种方法有什么区别?在上面的例子中,两者都发送带有对象作为参数的消息给接收对象.

cocoa objective-c ios

11
推荐指数
2
解决办法
2861
查看次数

从DataGrid中选择DataGridCell

我有一个DataGridWPF控件,我想得到一个特定的DataGridCell.我知道行和列索引.我怎样才能做到这一点?

我需要,DataGridCell因为我必须能够访问其内容.因此,如果我有(例如)一列DataGridTextColum,我的内容将是一个TextBlock对象.

.net c# wpf wpfdatagrid datagridcell

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

OCLint ASTMatcher规则.匹配NS_ENUM

我正在尝试创建一个匹配typedef enumtypedef NS_ENUM声明的OCLint规则,但收效甚微.我有一个Objective-C文件(TestClass.m),其中包含以下枚举声明:

typedef NS_ENUM(NSInteger, TestEnum) {
    TestEnumNone,
    TestEnumSome,
    TestEnumAll
};

typedef enum {
    othertestvalue = 0,
    othertestvalue1,
    othertestvalue2
} OtherTestEnum;
Run Code Online (Sandbox Code Playgroud)

使用此命令转储AST:

clang -Xclang -ast-dump -fsyntax-only Classes/TestClass.m -- | grep Enum
Run Code Online (Sandbox Code Playgroud)

给我这个输出包含这个:

|-TypedefDecl 0x7f9d3accd630 <col:1, col:28> col:28 TestEnum 'enum TestEnum':'enum TestEnum'
|-EnumDecl 0x7f9d3accd6a8 prev 0x7f9d3accd530 </System/Library/Frameworks/CoreFoundation.framework/Headers/CFAvailability.h:171:57, Classes/TestClass.m:71:1> line:67:28 TestEnum 'NSInteger':'long'
| |-EnumConstantDecl 0x7f9d3accd738 <line:68:5> col:5 TestEnumNone 'NSInteger':'long'
| |-EnumConstantDecl 0x7f9d3accd788 <line:69:5> col:5 TestEnumSome 'NSInteger':'long'
| `-EnumConstantDecl 0x7f9d3accd7d8 <line:70:5> col:5 TestEnumAll 'NSInteger':'long'
|-EnumDecl 0x7f9d3accd828 <line:73:9, line:77:1> line:73:9 …
Run Code Online (Sandbox Code Playgroud)

c++ clang abstract-syntax-tree oclint libtooling

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

iphone,当用"renderInContext"将图像保存到设备时,图像模糊不清?

我正在使用此代码从视图中呈现图像.然后我将它保存到相册.图像模糊吗?为什么?有解决方案吗?

UIGraphicsBeginImageContext(self.view.bounds.size);
[self.view.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
Run Code Online (Sandbox Code Playgroud)

Tnx全部.

iphone blurry save photolibrary

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

iOS应用程序仅在未调试时崩溃

我正在使用testflight来测试我的应用程序,并且我发生了崩溃,只有当应用程序是为ad-hoc构建并通过测试飞行分发时才会发生.相关的崩溃报告详细信息如下:

Date/Time:       2012-06-11 09:00:34.638 +0800
OS Version:      iPhone OS 5.1.1 (9B206)
Report Version:  104

Exception Type:  EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x00000009
Crashed Thread:  0

Thread 0 name:  Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0   libobjc.A.dylib                 0x34e74f78 objc_msgSend + 16
1   appName                         0x0002963e __24-[XYPieChart reloadData]_block_invoke_0168 (XYPieChart.m:321)
2   libdispatch.dylib               0x30295c52 _dispatch_call_block_and_release + 6
3   libdispatch.dylib               0x302a0e8a _dispatch_main_queue_callback_4CF$VARIANT$up + 190
4   CoreFoundation                  0x371482a6 __CFRunLoopRun + 1262
5   CoreFoundation                  0x370cb49e CFRunLoopRunSpecific + 294
6   CoreFoundation                  0x370cb366 CFRunLoopRunInMode + 98
7   GraphicsServices                0x3388a432 …
Run Code Online (Sandbox Code Playgroud)

crash objective-c ios testflight

7
推荐指数
3
解决办法
6303
查看次数

视网膜和非视网膜设备上的renderInContext

我通过拍摄UIView的截图来创建PDF,目前在带有视网膜显示屏的iPad3上工作得很好,但是当在其他具有较低分辨率屏幕的设备上进行测试时,我遇到文本分辨率问题.

这是我的代码:

    //start a new page with default size and info
    //this can be changed later to include extra info.
    UIGraphicsBeginPDFPage();

    //render the view's layer into an image context
    //the last option specifies scale. If 0, it uses the devices scale.
    UIGraphicsBeginImageContextWithOptions(view.bounds.size, view.opaque, 2.0);

    CGContextRef context = UIGraphicsGetCurrentContext();
    [view.layer renderInContext:context];
    UIImage *screenShot = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();

    //render the screenshot into the pdf page CGContext
    [screenShot drawInRect:view.bounds];

    //close the pdf context (saves the pdf to the NSData object)
    UIGraphicsEndPDFContext();
Run Code Online (Sandbox Code Playgroud)

我也尝试将UIGraphicsBeginImageContextWithOptions比例设置为2.0,但这没有任何变化.如何强制iPad2上的视图以2倍的分辨率渲染? …

objective-c calayer uikit quartz-core

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

Spring-mvc控制器和异常处理

想问一个关于spring-mvc控制器的最佳实践问题.请查看以下代码:

    @Autowired
    SomeService service;

    @RequestMapping (...)
    public @ResponseBody Response createSomething () {

       try {

            serviceResponse = service.doSomething();

            //create a success response and return

       }
       catch (SomeServiceException e) {
             //create an error response and return 
       }

}
Run Code Online (Sandbox Code Playgroud)

错误处理是否在控制器级别正常进行?或者服务类是否应该抛出如上所示的异常.请查看并告知我们.

java spring spring-mvc

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

adjustsFontSizeToFitWidth无法正常工作

我正在为iOS> 5.0开发应用程序并使用Xcode 4.6.2为了解释我的问题,我UIScrollView只包含了一堆UILabel.我要在这些UILabels中显示的文本是动态的,但是,UILabel帧是常量,所以如果当前文本不适合帧宽,我需要缩小我的字体大小.所以,我找到了adjustsFontSizeToFitWidth属性UILabel.

这是我直接从UILabel课堂参考中得到的解释.

一个布尔值,指示是否应缩小字体大小以使标题字符串适合标签的边界矩形.

是的,我认为这就是我正在寻找的东西,因为我要展示的文字UILabel总是一行.所以我知道这个属性应该与numberOfLinesproperty一起使用来设置1.

这是我的代码,以实现这一目标.

for (NSString *currentImage in self.imagesNames)
{
    UILabel *lbl = [[UILabel alloc]initWithFrame:CGRectMake(imageNumber*resultTypeImageWidth, 10, 75, 35)];
    [lbl setFont:[UIFont fontWithName:@"GothamRounded-Bold" size:25]];
    [lbl setNumberOfLines:1];
    [lbl setText:currentImage];
    [lbl setBackgroundColor:[UIColor clearColor]];
    [lbl setTextColor:[UIColor colorWithHue:0.07 saturation:1 brightness:0.49 alpha:1.0]];
    [lbl adjustsFontSizeToFitWidth];
    [lbl setTextAlignment:NSTextAlignmentCenter];
    imageNumber++;
    [self.resultTypeScrollView addSubview:lbl];
}
Run Code Online (Sandbox Code Playgroud)

imageNumber是一个int,我用它来把它UILabel放在我UIScrollView的名字的适当位置resultTypeScrollView.resultTypeImageWidth是一个常数我已经定义并设置100以在UILabels 之间给出一些空间. …

iphone uilabel ios5 ios6

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

Xcode Instruments 8.3显示设置按钮丢失

在最新版本的Instruments 8.3中,显示设置按钮已被删除,并由文件 - >记录设置对话框替换.

使用分配工具时,我现在无法再激活自动快照,因为该选项已从右侧面板中消失,而记录选项对话框仅显示分配工具的值,但不显示vm跟踪器的值.记录选项对话框

有人知道选项被移动到哪里了吗?

非常感谢

xcode instruments ios

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