小编Jon*_*an.的帖子

为什么要使用mem_fn?

我很困惑为什么std::mem_fn需要.

我有一个函数,它接受任何可调用的(lambda,函数指针等),并将它绑定到一个参数.

例如:

template<class T>
void Class::DoBinding(T callable) {
  m_callable = std::bind(callable, _1, 4);
}
//somewhere else
Item item;
m_callable(item);
Run Code Online (Sandbox Code Playgroud)

我见过的所有代码示例都是:

//some defined member function
Item::Foo(int n);

DoBinding(std::mem_fn(&Item::Foo));
Run Code Online (Sandbox Code Playgroud)

为什么不能简单地:

DoBinding(&Item::Foo);
Run Code Online (Sandbox Code Playgroud)

似乎后者可以调用而不必使用std :: mem_fn,那么为什么需要呢?

c++ stdbind c++11

12
推荐指数
2
解决办法
6123
查看次数

在iphone上模拟触控

我试图在UIWebView上模拟触摸,我如何以编程方式在某个位置触发触摸事件?(x和y坐标)只需调用touchesBegan?

理想情况下,我想在没有任何javascript黑客的情况下这样做,因为将来它可能不是一个uiwebview

iphone events objective-c touch

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

停止滚动条向左推送内容

我正在设计一个网站,我有多个页面使用相同的模板,有些页面比浏览器窗口的高度长,其他页面不高.较长的那些被推到他左边大约10px,这可能听起来不多,但是当切换页面时,一切都向侧面跳跃,这是显而易见的.

是否有一些CSS可以做的事情是让每个页面上的滚动条显示在内容上而不是推送它,我在模板中有一个边距,所以如果浏览器窗口太小,它只会覆盖用户滚动时的边距到最右边.

html javascript css

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

排序NSD的NSArray

我有一个NSAd的NSDate对象,我想对它们进行排序,以便今天是0,昨天是1等.

它是升序还是降序,我使用函数,选择器还是什么?

cocoa nsdate nsarray

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

IT指令ARM组装点

我有以下ARM汇编代码.

CMP             R0, #0
ITT EQ
MOVEQ           R0, #0x7FFFFFFF
BXEQ            LR
Run Code Online (Sandbox Code Playgroud)

首先,为什么MOV和BX指令后需要均衡器?所述ARM参考说,ITT后的状态(EQ)将被应用到在IT块中的第一指令(MOV),然后在ITT第二T的,因为均衡器将被应用到在所述第二指令(BX) IT块.因此,如果ITT正在应用EQ,为什么MOVEQ和BXEQ需要均衡器?

其次,为什么需要IT指令呢?为什么不只是:

CMP             R0, #0
MOVEQ           R0, #0x7FFFFFFF
BXEQ            LR
Run Code Online (Sandbox Code Playgroud)

它是MOV而不是MOVS所以标志不会更新,BXEQ中的EQ仍将"引用"CMP设置的标志值.

assembly arm

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

iPad框架宽度和高度混合在风景中

我已经完成了这个问题所说的:仅适用于iPhone或iPad的横向模式

但是view.frame.size.height仍然是1024,这是设备处于纵向时的高度,当界面旋转宽度和高度开关值时肯定是?

(假设您想将屏幕拆分为3个视图,对于横向和纵向的应用程序,并且您执行了view.frame.size.width/3,因为宽度值不会是不正确的.实际上是宽度)

我敢肯定iPhone上的宽度和高度开关,为什么不在iPad上呢?


这让我再次感到震惊,我也没有使用笔尖,有人可以给出一个可接受的答案吗?(即不涉及手动切换宽度和高度的那个)

一旦奖金被授予答案,我将开始另一个奖金250并将其奖励给同一个人.

iphone objective-c orientation ipad

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

检查页面是否已添加到iPhone主屏幕

如果在webapp模式下将页面添加到iPhone主屏幕,是否可以使用JavaScript或CSS进行检查.就像获得没有导航条的屏幕高度一样,这将是460px

javascript iphone iphone-standalone-web-app

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

将BOOL传递给makeObjectsPerformSelector:withObject:

我想将BOOL传递给[NSArray makeObjectsPerformSelector:withObject:]参数.例如

[buttons makeObjectsPerformSelector:@selector(setEnabled:) withObject: NO];
Run Code Online (Sandbox Code Playgroud)

上面的代码不起作用,因为withObject只接受id.

什么是正确的方法呢?

我看到了一些代码:

[buttons makeObjectsPerformSelector:@selector(setEnabled:) withObject: (id)kCFBooleanTrue];
[buttons makeObjectsPerformSelector:@selector(setEnabled:) withObject: (id)kCFBooleanFalse];
Run Code Online (Sandbox Code Playgroud)

这在4.2模拟器上工作正常但在4.2 iphone上失败.

iphone nsarray

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

什么是UrbanAirship的重点?

我正在研究我正在创建的应用程序的推送通知.我听说过很多关于UrbanAirship的内容,但我似乎找不到一个明确的理由让我使用它?据我所知,UA是个中间人?此页面显示免费版本没有推送编写器,因此开发人员仍然需要服务器自己创建通知,如果需要他们自己的服务器那么我不妨直接去APNS?

UA有什么意义和优势?如果您使用它,如何在没有自己的服务器的情况下发送通知?

iphone objective-c apple-push-notifications urbanairship.com ios

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

Cocoa:右键单击NSStatusItem

我是一名.Net开发人员,他需要将一个小项目移植到Mac中,所以我对Objective C几乎一无所知.事实上,下面的代码只是抓住了一堆稻草,在黑暗中拍摄.

尝试构建一个状态菜单程序,打开一个或另一个窗口,具体取决于它是左键单击还是右键单击/按住Ctrl键单击.这是我所拥有的,它仅适用于左键单击(显然):

-(void) awakeFromNib{

    NSBundle *bundle = [NSbundle mainBundle];

    statusItem = [[NSStatusBar systemStatusBar] statusItemWithLength:NSSquareStatusItemLength] retain];
    [statusImage = [[NSImage alloc] initWithContentsOfFile:[bundle pathForResource:@"icon" ofType:@"png"]];
    [statusItem setImage:statusImage];
    [statusItem setToolTip:@"Program Name"];
    [statusItem setHighlightMode:YES];
    [statusItem setAction:@selector(openWin:)];
    [statusItem setTarget: self];
}

-(void)openWin:(id)sender{
    [self openLeftWindow:sender];
}

-(IBAction)openLeftWindow:(id)sender{
    //Code to populate Left Click Window
    [leftWindow makeKeyAndorderFront:nil];
}

-(IBAction)openRightWindow:(id)sender{
    //Code to populate Right Click Window
    [rightWindow makeKeyAndorderFront:nil];
}
Run Code Online (Sandbox Code Playgroud)

在我看来,解决方案将是openWin()函数中的if语句,以确定单击哪个按钮(或者如果按住ctrl)然后运行相应的代码或使菜单知道左右两侧点击.但是当我试图这样做时,这些都没有奏效.

提前致谢.

cocoa right-click nsstatusitem

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