Tag: 目标C

Objective-C – 与C ++桥接的缺点?

所以,我今天很无聊,决定搞乱C ++ / Obj-C插值,并且find了创build一个非常有趣的设置的方法。 @protocol NSCPPObj <NSObject> -(id) init; -(id) initWithInt:(int) value; -(int) somethingThatReturnsAValue; -(void) doSomething; @end class NSCPPObj : objc_object { public: static Class cls(); int iVar; NSCPPObj(); NSCPPObj(int); int somethingThatReturnsAValue(); void doSomething(); }; 正如你所看到的,界面非常简单易懂。 我们创build两个(几乎)相同的接口,一个用于C ++对象,另一个用于Obj-C协议。 现在,我find了一个方法来实现这一点,但是振作起来,这会变得很难看: // NSCPPObj.mm #import <objc/runtime.h> #import <iostream> #import "NSCPPObject.h" Class NSCPPObj_class = nil; __attribute__((constructor)) static void initialize() […]

更改locking屏幕背景audio控制文本?

我有一个iOS应用程序,使用AVAudioSessionstream式背景audio。 它工作正常,但我很好奇,有没有办法改变锁屏audio控制的文本? 现在它只是显示我的应用程序的名称,但我想将其更改为曲目的名称。 此外,多任务栏在控件下面没有文本 – 有没有办法在那里添加曲目名称,就像iPod应用程序那样?

文件自预编译头build立以来已被修改

所以我不小心修改了一个头文件( CBCentralManager.h) ,导致上面的错误显示,当我build立。 我search堆栈溢出的解决scheme,并发现这一点 。 即使删除派生的数据后,我仍然得到相同的错误。 我也尝试删除ModuleCache/FUW5IOHP9BIS文件夹,但没有成功。 这是我看到的具体错误: file /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/System/Library/Frameworks/CoreBluetooth.framework/Headers/CBCentralManager.h' has been modified since the precompiled header '/var/folders/pj/hslm53_51xxd_npfqym5r6z00000gn/C/com.apple.DeveloperTools/5.0-5A1412/Xcode/5.0-5A1412/Xcode/ModuleCache/FUW5IOHP9BIS/CoreBluetooth.pcm was built 任何帮助是极大的赞赏。

无法在UITableView实现中调用委托/数据源方法

我为UITableView创build了名为mainTableViewgm.h和mainTableViewgm.m .h和.m文件。 我从我的主视图控制器调用 – initWithFrame :方法到这个mainTableViewgm.m实现文件 [[mainTableViewgm alloc]initWithFrame:tableViewOne.frame] 请注意,这个tableview是在我的主视图控制器。 但是我已经为tableView创build了单独的文件,并且还在故事板中将自定义类设置为mainTableViewgm 。 -initWithFrame:方法如下所示 – (id)initWithFrame:(CGRect)frame { //NSLog(@"kource data"); self = [super initWithFrame:frame]; if (self) { [self setDelegate:self]; [self setDataSource:self]; [self tableView:self cellForRowAtIndexPath:0]; [self tableView:self numberOfRowsInSection:1]; // Initialization code } return self; } -(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { NSLog(@"kource data"); return 1; } -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath […]

在目标C中借助AFNetworking调用Web服务

我正在使用NSURLConnection方法来调用Web服务我想要的是用第三方库replace它AFNetworking我应该如何实现这个我打电话给Web服务与数据第一次这里是我目前正在做的。 – (void)viewDidLoad { [super viewDidLoad]; NSURL * linkUrl = [NSURL URLWithString:@URLBase]; NSMutableURLRequest *theRequest = [NSMutableURLRequest requestWithURL:linkUrl]; NSString *msgLength = [NSString stringWithFormat:@"%lu", (unsigned long)[str length]]; [theRequest addValue: @"text/plain; charset=utf-8" forHTTPHeaderField:@"Content-Type"]; [theRequest addValue: msgLength forHTTPHeaderField:@"Content-Length"]; [theRequest setHTTPMethod:@"POST"]; [theRequest setHTTPBody: [str dataUsingEncoding:NSUTF8StringEncoding]]; NSURLConnection *theConnection = [[NSURLConnection alloc] initWithRequest:theRequest delegate:self]; if( theConnection ) { webData = [[NSMutableData alloc] […]

iOS Dropbox SDK – 无法上传或获取元数据

这个应用程序用来正常工作,但现在我不能上传文件或获取元数据。 每当我尝试上传,我会得到 File upload failed with error: Error Domain=dropbox.com Code=401 "The operation couldn't be completed. (dropbox.com error 401.)" 但是,当试图获取元数据,我会得到 Error loading metadata: Error Domain=dropbox.com Code=403 "The operation couldn't be completed. (dropbox.com error 403.)" 我一直在尝试重新进行身份validation,但执行unlink命令后似乎没有任何区别。 我试过把这个命令放在不同的地方。 – (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { // Override point for customization after application launch. //[[DBSession sharedSession] unlinkAll]; DBSession *dbSession = […]

发送参数为PHP,并等待响应

我正在为移动应用程序构build一个login系统,并且需要使用POST / GET方法将用户名和密码发送到PHP项目。 那么我已经阅读了互联网上的一些教程,看到大多数教导如何做到这一点,但我需要发送post,并接收通过PHP生成的值,即: 我们发送一个PHP的login名和密码 如果login错误,PHP会显示错误的login名和密码。 如果你是对的,它会在屏幕上显示另一条消息 而且,这就是我想要做的,超越发送参数,我想从PHP文件接收响应,这是可能的Ios?

使用#define和clang为info.plist创build版本号变体?

几年前,在编译GCC时,在#include.h文件中定义的以下内容可以在info.plist中预处理: #define MAJORVERSION 2 #define MINORVERSION 6 #define MAINTVERSION 4 <key>CFBundleShortVersionString</key> <string>MAJORVERSION.MINORVERSION.MAINTVERSION</string> …将变成“2.6.4”。 这是因为海湾合作委员会支持“传统”的国旗。 (请参阅Xcode中的技术说明TN2175 Info.plist文件使用C预处理器 ,在“在macros扩展过程中消除令牌之间的空白”下) 但是,快进到2016和Clang 7.0.2(Xcode 7.2.1)显然不支持“-traditional”或“-traditional-cpp”(或正确支持),产生以下string: "2 . 6 . 4" (请参阅错误12035 – 预处理程序在macros扩展中插入空格,注释4 ) 因为有很多不同的变体(CFBundleShortVersionString,CFBundleVersion,CFBundleGetInfoString),所以最好解决这个叮当问题,并定义一次,然后连接/串联这些部分。 什么是现在这样做的普遍接受的模式? (我目前正在build立在MacOS上,但IOS的工作模式是一样的)

在xcode 5中实例化ViewControllerWithIdentifier

我正在Xcode 5的故事板上工作。我有一个导航控制器,并试图build立到故事板中其他场景的转换。 我第一次尝试使用: – (IBAction)handleTap:(UITapGestureRecognizer *)sender { NSLog(@"Image clicked"); _detailPage = [[MPDetailPageViewController alloc] initWithNibName:@"MPDetailPageViewController" bundle:nil]; _detailPage.product = _curProduct; //Bring to detail page [self.navigationController pushViewController:self.detailPage animated:YES]; } 这会把我带到黑屏。 在stackoverflow上search我发现这个post从2013年2月build议使用instantiateViewControllerWithIdentifier 所以我试了一下: – (IBAction)handleTap:(UITapGestureRecognizer *)sender { NSLog(@"Image clicked"); _detailPage = [self.storyboard instantiateViewControllerWithIdentifier:@"MPDetailPageViewController"]; _detailPage.product = _curProduct; //Bring to detail page [self.navigationController pushViewController:self.detailPage animated:YES]; } 但是,这给了我一个错误 Storyboard()不包含标识符为“MPDetailPageViewController”的视图控制器 我试图找出如何find/设置标识符,并看到post引用Storyboard ID ,但是当我看我的屏幕上,我只看到Restoration […]

如何通过软件设置来点击iOS上的音量button

有没有什么办法在iOS应用程序中区分出有人通过iPhone / iPad上的硬件button更改了应用程序中某些UI控件所完成的情况? 我已经search了,到目前为止,我想出了很多方法来通知音量已经改变,但是没有办法找出它是否是由UI控制或硬件button完成的。 包含信息的通知包含更改的原因,但对于两种情况都是一样的。