小编use*_*234的帖子

不兼容的块指针类型使用类型表达式初始化'void(^)(struct ALAssetsGroup*,BOOL*)'

我看到SO上的几个人已成功使用此代码.但是我得到了不兼容的块指针错误:

不兼容的块指针类型初始化

void(^)(struct ALAssetsGroup *, BOOL *)
Run Code Online (Sandbox Code Playgroud)

带有类型的表达式

void(^)(ALAsset *, NSUInteger, BOOL *)
Run Code Online (Sandbox Code Playgroud)

任何提示?(编辑完整代码)

    ALAssetsLibrary *library =[[ALAssetsLibrary alloc]init];
    void (^assetEnumerator)(struct ALAsset *, NSUInteger, BOOL *) = ^(ALAsset *result, NSUInteger index, BOOL *stop){
    if(result != NULL) {
                NSLog(@"See Asset: %@", result);

            }
        };

    void (^assetGroupEnumerator)(struct ALAssetsGroup *, BOOL *) =  ^(ALAssetsGroup *group, BOOL *stop) {
            if(group != nil) {NSLog(@"dont See Asset: ");
                [group enumerateAssetsUsingBlock:assetEnumerator];
            }
        };

    [library enumerateGroupsWithTypes:ALAssetsGroupAlbum
                               usingBlock:assetGroupEnumerator
                             failureBlock: ^(NSError *error) {
                                 NSLog(@"Failure");
                             }];
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

objective-c ios objective-c-blocks alasset alassetslibrary

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

更改UIStepper的大小

我似乎无法改变大小UIStepper:

  1. 在IB中,"宽度"和"高度"框显示为灰色.
  2. 我用过initWithFrame:

    UIStepper*stepper = [[UIStepper alloc] initWithFrame:CGRectMake(300,638,120,80)];

    但它不会改变大小.关于SO的几个帖子似乎暗示它是可变的.有什么建议吗?

cocoa-touch objective-c ios uistepper

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

Objective-c内存管理

作为Objective-c及其内存管理技术的新成员,比较下面的两个部分.(原始代码是从apple.com 自动释放池中提取的)
问题:
1.这两个部分是否达到了相同的结果?
2.这两个部分是否实现了相同的内存管理结果?(至于内存清理,泄漏等)
3.下面的第二个代码是否违反了最佳做法?性能?

void main()
{
    NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
    NSArray *args = [[NSProcessInfo processInfo] arguments];
    for (NSString *fileName in args) {
        NSAutoreleasePool *loopPool = [[NSAutoreleasePool alloc] init];
        NSError *error = nil;
        NSString *fileContents = [[[NSString alloc] initWithContentsOfFile:fileName
                                           encoding:NSUTF8StringEncoding error:&error] autorelease];
        /* Process the string, creating and autoreleasing more objects. */
        [loopPool drain];
    }
    /* Do whatever cleanup is needed. */
    [pool drain];
    exit (EXIT_SUCCESS);
}

void main()
{
    NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] …
Run Code Online (Sandbox Code Playgroud)

memory-management objective-c

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

ios,android,windows移动平台上的蓝牙sdk

作为一个新进入的移动设备的发展,我有个问题:一,可以开发一个应用程序,可以进行通信通过蓝牙(发送数据等)之间的iOS设备?我已经阅读过关于私有api内容的文章,所以我只需要知道可以放在app store上的东西.我似乎无法在苹果网站上为ios找到任何蓝牙类库.

android bluetooth windows-mobile ios4 ios

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

NSString stringByReplacingOccurrencesOfRegex

我看到了这个方法的很多用法:在NS上的NSString上的stringByReplacingOccurrencesOfRegex.但我得到了一个警告,说没有找到这个实例方法,并且在运行时崩溃了"无法识别的选择器发送给......"

任何的想法?

regex objective-c nsstring ios

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

在运行时添加NSImageview不响应mousedown事件

我在运行时创建了一个按钮和一个NSImageView控件.该按钮响应了click事件.但是imageview没有.有什么建议?

    NSView *superview = [((MyAppAppDelegate *)[NSApp delegate]).window contentView];

    NSButton *button = [ [ NSButton alloc ] initWithFrame: NSMakeRect(300, 50, 50.0, 50.0 ) ];
    [superview addSubview:button];
    [button setTarget:self];
    [button setAction:@selector(button_Clicked:)];

    NSImageView *myImageView = [[NSImageView alloc] initWithFrame:NSMakeRect(5, 5, 240, 240)];
    NSString* filePath = @"/Volumes/MAC DAT2/pictures/TVX1/153/MP6107frame5786.jpg";
    NSImage* image1 = [[NSImage alloc] initWithContentsOfFile:filePath];
    [myImageView setImage:image1];
    [superview addSubview:myImageView];
    [myImageView setTarget:self];
    [myImageView setAction:@selector(mouseDown:)];

}
- (IBAction)button_Clicked:(id)sender
{
    NSLog(@"button clicked");
}
-(void) mouseDown:(NSEvent *)event
//- (IBAction)mouseDown:(NSEvent *)event  //also have tried this one.
{
    NSLog(@"mousedown");

}
Run Code Online (Sandbox Code Playgroud)

编辑:我需要使用 …

cocoa objective-c

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

UITabBarController"想要全屏"设置

在IB中,对于UITabBarController,每个选项卡的每个视图控制器都有一个设置,称为"想要全屏".我正在阅读的书说,如果你想全屏显示你的视图,那么选择该选项.但是您需要离开才能返回标签栏.不幸的是,本书没有任何使用此设置的示例.我已经尝试过自己,但当我点击水龙头时,结果视图不是全屏.谁知道如何正确使用它?

objective-c uitabbarcontroller ios

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

如何确定tabbarcontroller中的当前活动视图

我有一个带有三个标签的标签栏.在其中一个viewcontrollers属于中间选项卡,我的代码需要确定活动视图是否是第一个viewcontroller的视图.任何的想法?

objective-c uitabbarcontroller uiviewcontroller ios

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

使用escape将NSString转换为unicode

NSString *string1 = @"\u03C0";
NSLog(@"string1: %@", string1);  // result of a Pi symbol

NSString *string2 = @"03C0";
NSString *string3 = [@"\\u" stringByAppendingString:string2];
NSLog(@"string3: %@", string3);  // result of \u03C0 but need it to be a Pi symbol as well
Run Code Online (Sandbox Code Playgroud)

我认为string3会给出与string1相同的结果.但事实并非如此.知道如何解决这个问题吗?

unicode objective-c nsstring ios

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

重复代码检查iOS版本

我在我的应用中反复使用此代码段.因此,最好一次读取并将其存储在全局变量或appDelegate中,或者只是在需要时继续执行代码片段?

#define SYSTEM_VERSION_LESS_THAN(v)                 ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] == NSOrderedAscending)
if (SYSTEM_VERSION_LESS_THAN(@"7.0"))
    return NO;
return YES;
Run Code Online (Sandbox Code Playgroud)

ios

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