タグ付けされた質問 「objective-c」

このタグは、Objective-C機能に関する質問または言語のコードに依存する質問でのみ使用する必要があります。タグ[cocoa]および[cocoa-touch]は、Appleのフレームワークまたはクラスについて質問するために使用する必要があります。これらのプラットフォームに固有の問題には、関連タグ[ios]、[macos]、[apple-watch]、および[tvos]を使用します。

5
NSInteger変数をフォーマット引数として使用すると、なぜlongにキャストする必要があるのですか?
NSInteger myInt = 1804809223; NSLog(@"%i", myInt); <==== 上記のコードはエラーを生成します: タイプ「NSInteger」の値は、フォーマット引数として使用しないでください。代わりに明示的なキャストを「long」に追加してください 訂正されたNSLogメッセージは実際にNSLog(@"%lg", (long) myInt);です。値を表示したいmyIntのに整数値をに変換する必要があるのはなぜlongですか?

9
Objective-C静的クラスレベル変数
Filmクラスがあり、それぞれに一意のIDが保存されています。C#、Javaなどでは、静的なint currentIDを定義できます。IDを設定するたびに、currentIDを増やすことができ、オブジェクトレベルではなくクラスレベルで変更が発生します。これはObjective-Cで実行できますか?これに対する答えを見つけるのは非常に困難です。

19
フレームワークモジュール内に非モジュラーヘッダーを含める
Xcode 6を使用しています 1)最初に、動的ライブラリ(CoreLibrary)を作成しています。このライブラリには、RequestPoster.hファイルが含まれています。 2)次に、Cocoa Touch Frameworkを作成し、この動的ライブラリ(CoreLibrary)を追加しました。 3)次に、このフレームワークがプロジェクトに追加され、RequestPoster.hファイル(CoreLibrary)でエラーが発生します。 エラー:フレームワークモジュールクラス内に非モジュールヘッダーが含まれています: ifaddrs.h、arpa / inet.h、sys / types.h> これらのファイルはプロジェクトで見つかりません。



10
オブジェクトにキー値オブザーバーがアタッチされているかどうかを確認する方法
オブジェクティブcオブジェクトにremoveObservers:を指示すると、キーパスがそのキーパスに登録されていない場合、悲しいことが起こります。お気に入り - 'キーパス「theKeyPath」のオブザーバーは、オブザーバーとして登録されていないため、削除できません。' オブジェクトにオブザーバーが登録されているかどうかを確認する方法があるので、これを行うことができます if (object has observer){ remove observer } else{ go on my merry way }

7
Objective-CのJSONパーサーの比較(JSONフレームワーク、YAJL、TouchJSONなど)
私の知る限り、Objective-C用の3つのJSONパーサー、JSONフレームワーク、YAJL、およびタッチJSONがあります。そして、これら3つは独自の特徴を持っています。 例: YAJLはSAXスタイルのパーサーとして使用できます。 JSONフレームワークには比較的長い歴史があり、広く使用されています。 Touch JSONはNSStringではなくNSDataを解析します。 さらに、私がテストした限りでは、パフォーマンス比較の結果は次のとおりです: [高速] YAJL> JSONフレームワーク>タッチJSON [低速]。 これらのJSONパーサーの長所と短所を知っているなら、教えていただけますか? 最後に、他のJSONパーサーを知っている場合は教えてください。
142 iphone  objective-c  json 

7
Objective-C:複数の引数を持つセレクターの呼び出し
MyClass.mで、私は定義しました - (void) myTest: (NSString *) withAString{ NSLog(@"hi, %@", withAString); } MyClass.hの適切な宣言。後で電話したい [self performSelector:@selector(mytest:withAString:) withObject: mystring]; MyClass.mでエラーが発生しますが、 *キャッチされない例外 'NSInvalidArgumentException'によりアプリを終了しています。理由: '* -[MyClass myTest:withAtring:]:認識されないセレクターがインスタンス0xe421f0に送信されました' 文字列をコンソールに出力する引数をとらず、うまく機能するセレクターを使用して、より簡単なケースを試しました。コードの何が問題になっていて、どうすれば修正できますか?ありがとう。


30
指定されたエンタイトルメント…プロファイル。(0xE8008016)。エラーiOS 4.2
The entitlements specified in your application’s Code Signing Entitlements file do not match those specified in your provisioning profile. (0xE8008016).iOS 4.2.6(Verizon)でジェイルブレイクされていないデバイスに最初のアプリをデプロイしようとすると、「恐ろしい」エラーが発生します。問題は、私がEntitlements fileプロジェクトをまったく配布しておらず、1台のデバイスに配置しているだけなので、プロジェクトにがないことです。私は、アップルがあなたを手紙(証明書、デバイス、プロビジョニング)に導くすべてのフープとループを通過しました、そして私は何が間違っているのか理解できません。 誰かがこの問題を助けてくれますか?


17
AVFoundation AVPlayerでビデオをループしますか?
AVFoundationでビデオをループする比較的簡単な方法はありますか? AVPlayerとAVPlayerLayerを次のように作成しました。 avPlayer = [[AVPlayer playerWithURL:videoUrl] retain]; avPlayerLayer = [[AVPlayerLayer playerLayerWithPlayer:avPlayer] retain]; avPlayerLayer.frame = contentView.layer.bounds; [contentView.layer addSublayer: avPlayerLayer]; それから私は私のとビデオを再生します: [avPlayer play]; ビデオは正常に再生されますが、最後に停止します。MPMoviePlayerControllerを使用すると、そのrepeatModeプロパティを適切な値に設定するだけです。AVPlayerには同様のプロパティがないようです。また、映画がいつ終了したかを通知するコールバックもないため、最初に戻って再生できます。 MPMoviePlayerControllerには重大な制限があるため、ここでは使用していません。複数のビデオストリームを一度に再生したい。

8
Xcode /シミュレーター:古いバージョンのiOSを実行するには?
iOS SDK 4.2へのアップグレードを考えています。しかし、iOS 3.2としてシミュレータを実行できるかどうかは疑問です。これは、iPad用のiAdsを作成しているが、プログラムがiOS 3.2で実行されるかどうかを確認したいためです。 注:私はこれと似たような投稿を以前に見たことがありますが、これがどのように行われるかについての正確な手順を説明するのにはあまり役に立ちませんでした。
142 ios  objective-c  iphone  xcode  ipad 

13
NSLayoutConstraintの乗数プロパティを変更できますか?
1つのスーパービューに2つのビューを作成し、ビュー間に制約を追加しました。 _indicatorConstrainWidth = [NSLayoutConstraint constraintWithItem:self.view1 attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:self.view2 attribute:NSLayoutAttributeWidth multiplier:1.0f constant:0.0f]; [_indicatorConstrainWidth setPriority:UILayoutPriorityDefaultLow]; _indicatorConstrainHeight = [NSLayoutConstraint constraintWithItem:self.view1 attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:self.view2 attribute:NSLayoutAttributeHeight multiplier:1.0f constant:0.0f]; [_indicatorConstrainHeight setPriority:UILayoutPriorityDefaultLow]; [self addConstraint:_indicatorConstrainWidth]; [self addConstraint:_indicatorConstrainHeight]; アニメーションでマルチプライヤプロパティを変更したいのですが、マルチプライヤプロパティを変更する方法がわかりません。(ヘッダーファイルNSLayoutConstraint.hのプライベートプロパティに_coefficientが見つかりましたが、プライベートです。) 複数のプロパティを変更するにはどうすればよいですか? 私の回避策は、古い制約を削除して、の値が異なる新しい制約を追加することですmultipler。


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.