小编pau*_*ler的帖子

Boost程序选项添加选项语法

我正在编写一个使用Boost程序选项库的程序,我注意到以下语法在我看到之后一直困扰着我:

desc.add_options()
        ("help","produce help message")
        ( /* other flag, value, description pairs here */)
;
Run Code Online (Sandbox Code Playgroud)

我在标题中看到,operator()被覆盖了,但是我不确定它是如何允许它在语法上正确的.

其次,与多次调用add_options()相比,这种语法是否有任何优势(除了展示你可以像这样操作语法这一事实)?

c++ boost boost-program-options

21
推荐指数
2
解决办法
5494
查看次数

iOS 7导航栏隐藏内容

我有一个在iOS 6中开发的应用程序.但现在在iOS 7中,甚至我的应用程序已经为iOS 6编译,但在iOS 7设备上运行顶部导航栏(iOS 7中的新巨人),我的内容被隐藏了.顶部导航栏覆盖它.如果我用CGRect手动向下移动它在iOS 7中看起来很好,但是现在iOS 6看起来很糟糕(在它上面的空间很大).

该应用程序是使用自动布局关闭构建的,因为自动布局是难以正确设置的方法.

我的问题是,是否有一种简单的方法可以仅针对iOS 7移动内容?我真的不想重新开启自动布局,花一个月时间尝试将所有UI元素重新安装到位.该应用程序相当复杂,有30多个屏幕和屏幕上的大量动画视图.

objective-c ios ios7

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

如何使用return/enter键创建UIKeyCommand?

我想做一个UIKeyCommand只使用[return]密钥的东西.到目前为止,我已经尝试过:

UIKeyCommand *selectCommand = [UIKeyCommand keyCommandWithInput:@"\n" modifierFlags:0 action:@selector(chooseSelection:)];
Run Code Online (Sandbox Code Playgroud)

输入键没有全局常量,例如up,down,left,right和escape(from UIResponder.h):

// These are pre-defined constants for use with the input property of UIKeyCommand objects.
UIKIT_EXTERN NSString *const UIKeyInputUpArrow         NS_AVAILABLE_IOS(7_0);
UIKIT_EXTERN NSString *const UIKeyInputDownArrow       NS_AVAILABLE_IOS(7_0);
UIKIT_EXTERN NSString *const UIKeyInputLeftArrow       NS_AVAILABLE_IOS(7_0);
UIKIT_EXTERN NSString *const UIKeyInputRightArrow      NS_AVAILABLE_IOS(7_0);
UIKIT_EXTERN NSString *const UIKeyInputEscape          NS_AVAILABLE_IOS(7_0);
Run Code Online (Sandbox Code Playgroud)

还有什么我可以尝试捕获return/enter键吗?

objective-c uiresponder ios ios7 uikeycommand

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

确定iOS应用程序是否是通过Siri启动的

我一直在寻找,但还没找到......你知道是否有办法确定我的iOS应用程序是由Siri推出还是由用户点击应用程序图标?

我需要知道,因为我只想在我的应用程序从Siri启动时自动执行启动操作.

我想也许应用程序:didFinishLaunchingWithOptions或其他一些API将允许我的应用程序知道它是如何启动的,但似乎并非如此(或者我只是错过了它).

在Apple发布一些官方/公共Siri API之前,有什么想法可以使用吗?

cocoa-touch objective-c ios siri

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

MFMailComposeViewController由于iOS6上的全局外观属性而崩溃

当我提出一个问题时,我遇到了以下崩溃MFMailComposeViewController:

2013-11-08 11:04:05.963 <redacted>[7108:1603] *** Assertion failure in NSDictionary *_UIRecordArgumentOfInvocationAtIndex(NSInvocation *, NSUInteger, BOOL)(), /SourceCache/UIKit/UIKit-2380.17/UIAppearance.m:1118
2013-11-08 11:04:06.032 <redacted>[7108:1603] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Unknown key, "NSColor" in title text attributes dictionary'
Run Code Online (Sandbox Code Playgroud)

我在AppDelegate的application:didFinishLaunchingWithOptions:方法中将其跟踪到以下外观设置:

        [[UINavigationBar appearance] setTitleTextAttributes:
            @{NSForegroundColorAttributeName : [UIColor whiteColor]}];
Run Code Online (Sandbox Code Playgroud)

注释掉该行就可以了,但是会破坏应用程序的其余部分,所以我尝试将titleTextAttributes专门设置为空字典MFMailComposeViewController:

尝试#1

        [[UINavigationBar appearanceWhenContainedIn:
            NSClassFromString(@"MFMailComposeViewController"), nil]
            setTitleTextAttributes:@{ }];
Run Code Online (Sandbox Code Playgroud)

这导致同样的崩溃.和

        [[UINavigationBar appearanceWhenContainedIn:
            NSClassFromString(@"MFMailComposeViewController"), nil]
            setTitleTextAttributes:nil];
Run Code Online (Sandbox Code Playgroud)

也导致同样的崩溃.

尝试#2

我注意到这MFMailComposeViewController是一个UINavigationController,所以也许全局外观设置本地化到UINavigationController 的UIViewControllers .我整理了一些代码来确定MFMailComposeViewController中的视图控制器:

        for (UIViewController *viewController in mailViewController.viewControllers) {
            NSLog(@"%@", NSStringFromClass([viewController …
Run Code Online (Sandbox Code Playgroud)

objective-c ios uiappearance mfmailcomposeviewcontroller

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

如何在RemoteViews中更改文本大小

在RemoteViewsService.RemoteViewsFactory下

public RemoteViews getViewAt(int position) {
    final int itemId = (position % 2 == 0 ? R.layout.light_widget_item
            : R.layout.dark_widget_item);
    RemoteViews rv = new RemoteViews(mContext.getPackageName(), itemId);
    rv.setTextViewText(R.id.widget_item, text);
    // rv.setTextSize(mPrefs.getTextsize().getValue());
    return rv;
}
Run Code Online (Sandbox Code Playgroud)

如何以编程方式更改文本大小?

android android-widget text-size remoteview

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

在Objective-C中覆盖类别定义的方法是否安全?

我有一个类型的类结构UIViewControllerSubclass : UIViewController,其中UIViewControllerSubclass的唯一功能是#import UIViewController+Category.h.我在一个类别中添加方法的原因是我也可以制作UITableViewControllerSubclass : UITableViewController,这#import UIViewController+Category.h也是.众所周知,不要重复自己.

现在假设UIViewController + Category.h具有以下结构:

@interface UIViewController(Category)
- (void) method1;
- (void) method2;
@end
Run Code Online (Sandbox Code Playgroud)

如何安全是它来创建UIViewControllerSubclassSubclass : UIViewControllerSubclass,这将覆盖method1?我认为这会因为Objective-C的消息传递而起作用,但出于某种原因,我的直觉告诉我,我做错了.

objective-c objective-c-category

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

Objective和C中"and"关键字的含义是什么?

我在Xcode中输入了一条评论,但忘记了领先//.我注意到它and突出显示为关键字.我做了一些谷歌搜索,但我似乎无法弄清楚它做了什么(或者即使它是一个真正的关键字).

这是什么意思?

objective-c ios

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

iOS(目标C)版本的ualarm()

我正在寻找一个Objective-C函数来调用一个函数来以指定的间隔(2到5秒之间)更新UI.可以使用(大致)像这个伪代码的东西:

array[String];   // already populated

function1(){
    if (array.hasMoreElements()){
        call function2() in x seconds;
    }
}

void function2(){
    update gui with next string in the array;
    function1();
}
Run Code Online (Sandbox Code Playgroud)

我只是不能使用sleep()x秒,因为GUI会变得无响应; 并且我无法创建新线程来更新GUI,因为iOS UI元素不是线程安全的.

我已经研究过ualarm(),但它已经陈旧且非常粗糙,有人告诉我iOS库中有类似的实用程序; 但是我找不到它.

user-interface objective-c ios

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

应用程序内购买:"这不是测试用户帐户"

我正在开发一个使用应用程序内购买的应用程序,但是当我点击购买并输入我的Apple ID和密码时,我收到此错误:

这不是测试用户帐户.请在Sandbox环境中创建一个新帐户.[环境:SandBox]

objective-c in-app-purchase ios

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

enumerateObjectsUsingBlock:比for-in循环更快吗?为什么?

我正在阅读关于枚举NSHipster文章,该文章声称for-in循环比以下更快enumerateObjectsUsingBlock::

除非你在迭代时实际需要数字索引,否则使用for/in NSFastEnumeration循环几乎总是更快.

这个答案为该引用提供了一些反驳:

快速枚举需要从内部表示转换为快速枚举的表示.其中有开销.基于块的枚举允许集合类以最快遍历本机存储格式的速度枚举内容.

从内部表示转移到快速枚举的表示的翻译过程是什么?我知道那里有一些开销,但多少钱?

objective-c nsfastenumeration

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