小编v1A*_*xvw的帖子

以编程方式创建UISearchDisplayController

我正在尝试以UISearchDisplayController编程方式创建.我有一个应该设置我的搜索控制器的方法,但是当我调用它时,没有任何反应.

这是我的-setupSearch方法:

- (void)setupSearch {
    UISearchBar *myBar;
    UISearchDisplayController *myCon;

    myBar = [[UISearchBar alloc] initWithFrame:CGRectZero];
    [myBar sizeToFit];

    myCon = [[UISearchDisplayController alloc]
             initWithSearchBar:myBar contentsController:self];
    [myBar release];

    myCon.delegate = self;
    myCon.searchResultsDataSource = self;
    myCon.searchResultsDelegate = self;

    /* Setup scopes */
    {
        NSMutableArray *scopes;
        NSUInteger count, i;
        NSString *aScope;

        count = SCOPE_COUNT;
        scopes = [[NSMutableArray alloc] initWithCapacity:count];
        for(i = 0; i < count; i++) {
            // I create four scopes here
        }

        myCon.searchBar.scopeButtonTitles = scopes;
        [scopes release];
    }

    [myCon release]; …
Run Code Online (Sandbox Code Playgroud)

uisearchdisplaycontroller ios

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

从库中调用类别方法时"无法识别的选择器发送到类"

问题

这个问题可能看起来有点长,但我尽量提供尽可能多的信息,因为我对此非常感兴趣.

我目前正在开发一个应该自动执行XML文档解析的.但是我现在遇到了第一次测试库的问题.

我有一个名为library的库类CSXDocumentLayout,它表示文档的布局.此类包含- (NSError *)readLayoutDocument:(NSString *)fpath从init方法调用的私有方法.

/* MARK: Reading in Layouts */
- (NSError *)readLayoutDocument:(NSString *)fpath {
    CSXDocumentLayout *layout;
    CSXXMLParser *parser;
    BOOL state;

    layout = [CSXDocumentLayout layoutDocumentLayout];

    parser = [[CSXXMLParser alloc] initWithDocumentLayouts:
              [NSArray arrayWithObject:layout]];
    parser.file = fpath;

    state = [parser parse];

    if(state == NO || parser.error != nil) {
        return parser.error;
    }
    return nil;
}
Run Code Online (Sandbox Code Playgroud)

此方法将读入表示其他XML文档布局的XML文档.它由类解析CSXXMLParser,我想测试它.

我创建了一个表示布局文档的对象+[CSXDocumentLayout layoutDocumentLayout].此方法在类别中实现CSXDocumentLayout (CSXLayoutObject).

以下是我的测试文件:

#import <Foundation/Foundation.h>
#import <CeasyXML.h>

int main(int argc, …
Run Code Online (Sandbox Code Playgroud)

cocoa extension-methods objective-c foundation unrecognized-selector

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

签名整数网络和主机转换

我想将int32_t主机字节顺序转换为网络字节顺序,反之亦然.我知道htonl()函数及其变体,但这需要无符号整数.是否有标准库函数可以使用有符号整数执行相同的操作,还是我必须自己实现它?如果我必须自己实施,我应该怎么做?

我正在寻找一个适用于Linux和Mac OS X的例程.

c unix signed integer endianness

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

下载HTTP通过套接字(C)

最近我开始学习本指南,开始从互联网上下载文件.我读了它并想出了下面的代码来下载一个网站的HTTP主体.唯一的问题是,它不起作用.调用recv()调用时代码停止.它不会崩溃,它只是继续运行.这是我的错吗?我使用错误的approch吗?我打算使用代码不仅下载.html文件的内容,还要下载其他文件(zip,png,jpg,dmg ...).我希望有人可以帮助我.这是我的代码:

#include <stdio.h>
#include <sys/socket.h> /* SOCKET */
#include <netdb.h> /* struct addrinfo */
#include <stdlib.h> /* exit() */
#include <string.h> /* memset() */
#include <errno.h> /* errno */
#include <unistd.h> /* close() */
#include <arpa/inet.h> /* IP Conversion */

#include <stdarg.h> /* va_list */

#define SERVERNAME "developerief2.site11.com"
#define PROTOCOL "80"
#define MAXDATASIZE 1024*1024

void errorOut(int status, const char *format, ...);
void *get_in_addr(struct sockaddr *sa);

int main (int argc, const char * argv[]) {
    int status;

    // …
Run Code Online (Sandbox Code Playgroud)

html c download hang recv

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

使用"char"的布尔数组

我创建了一个实际上代表一个存储在char中的8个布尔数组的对象.我用它来学习更多关于按位运算符以及在C中创建自己的对象的内容.所以我有两个问题:

  1. 如果以下代码始终有效,我可以确定吗?
  2. 这是一个很好的实现,可以创建一个不会在C中丢失的对象,除非你自己发布它.

代码:

/*
 *  IEFBooleanArray.h
 *  IEFBooleanArray
 *
 *  Created by ief2 on 8/08/10.
 *  Copyright 2010 ief2. All rights reserved.
 *
 */

#ifndef IEFBOOLEANARRAY_H
#define IEFBOOLEANARRAY_H

#include <stdlib.h>
#include <string.h>
#include <math.h>

typedef char * IEFBooleanArrayRef;

void IEFBooleanArrayCreate(IEFBooleanArrayRef *ref);
void IEFBooleanArrayRelease(IEFBooleanArrayRef ref);
int IEFBooleanArraySetBitAtIndex(IEFBooleanArrayRef ref, 
                                 unsigned index, 
                                 int flag);
int IEFBooleanArrayGetBitAtIndex(IEFBooleanArrayRef ref, 
                                 unsigned index);

#endif
Run Code Online (Sandbox Code Playgroud)
/*
 *  IEFBooleanArray.c
 *  IEFBooleanArray
 *
 *  Created by ief2 on 8/08/10.
 *  Copyright 2010 ief2. All rights reserved.
 *
 */

#include …
Run Code Online (Sandbox Code Playgroud)

c arrays malloc free boolean

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

为越狱的iOS制作一个守护进程


我一直在寻找一种在iPhone上启动守护进程的方法,我通过学习蚂蚁应用程序的源代码,用Xcode创建了一个小测试应用程序,它告诉我应该使用launchctl但不幸的是它不起作用.

我已经在我的iPod Touch上用SSH安装了我的应用程序/Applications/,然后我通过SSH通过SSH启动它,mobile我的日志说:

Script started on Thu Feb 24 19:33:28 2011
bash-3.2$ ssh mobile@192.168.1.8
mobile@192.168.1.8's password: 
iPod-van-Henri:~ mobile$ cd /Applications
iPod-van-Henri:/Applications mobile$ cd DaemonUtility.app/
iPod-van-Henri:/Applications/DaemonUtility.app mobile$ ./DaemonUtility 
2011-02-24 19:35:08.022 DaemonUtility[1369:107] Read 0 bytes
2011-02-24 19:35:09.021 DaemonUtility[1369:107] Read 0 bytes
2011-02-24 19:35:10.021 DaemonUtility[1369:107] Read 0 bytes
2011-02-24 19:35:11.021 DaemonUtility[1369:107] Read 0 bytes
Bug: launchctl.c:2367 (24307):13: (dbfd = open(g_job_overrides_db_path, O_RDONLY | O_EXLOCK | O_CREAT, S_IRUSR | S_IWUSR)) != -1
launchctl: CFURLWriteDataAndPropertiesToResource(/private/var/stash/Applications.pwn/DaemonUtility.app/com.developerief2.daemontest.plist) failed: …
Run Code Online (Sandbox Code Playgroud)

iphone daemon launchd jailbreak ios

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

这个模型需要互斥锁吗?

我正在设计一个带有服务器的程序,让两个客户端进行通信.有一个客户端执行命令,另一个客户端执行命令.

为了使这项工作,我有两个线程:一个用于受控客户端的线程,另一个用于控制器客户端.

受控客户端始终保持连接,具有包含任务的向量,并在添加任务时执行这些任务.它有一个无限的while循环,当连接关闭时它会停止.

控制器 - 客户端将任务添加到向量.

现在因为在两个线程之间共享一个向量,可能会出现竞争条件,但由于一个线程只添加对象而另一个只弹出对象,这是必要的吗?我试图用这个问题制作一个流程图,但也许不清楚.我真的不知道如何创建流程图: 在此输入图像描述

我正在使用std::vector <CustomClass>C++实现这一点.

提前谢谢,
ief2

编辑:附加问题:vector.size()呼叫需要互斥吗?

c++ mutex pthreads race-condition stdvector

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

NSButtonCell子类'按钮类型不起作用


我将NSButtonCell类子类化为我的按钮给出了不同的外观.我的绘图代码工作正常.这是一个圆形的按钮,里面装满CGGradients,看起来就像是iTunes播放控件.它们并不完全相同,但它们对我来说足够相似.

现在我的问题是按钮类型.我设置了按钮类型,-[PlayerButtonCell initImageCell:]但我没有让它工作,只按下按钮时绘制推入的外观.我告诉你一段我的代码:

//
//  PlayerButtonCell.m
//  DownTube
//

#import "PlayerButtonCell.h"

@implementation PlayerButtonCell
/* MARK: Init */
- (id)initImageCell:(NSImage *)image {
    self = [super initImageCell:image];
    if(self != nil) {
        [self setImage:image];
        [self setButtonType:NSMomentaryPushInButton];
    }
    return self;
}

- (void)drawWithFrame:(NSRect)cellFrame inView:(NSView *)controlView {
    NSImage *myImage;
    NSBezierPath *myPath;
    NSRect myFrame;
    NSInteger myState;

    myFrame = NSInsetRect(cellFrame , STROKE_WIDTH / 2.0 , STROKE_WIDTH / 2.0);
    myImage = [self image];
    myState = [self state];

    NSLog(@"%d", [self buttonType]);

    /* Create bezier path */
    { …
Run Code Online (Sandbox Code Playgroud)

cocoa drawing subclass nsbuttoncell

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