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

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


2
Objective-Cランタイム:クラスがプロトコルに準拠しているかどうかを確認する最良の方法?
クラス(インスタンスはありません)があり、それが特定のプロトコルに準拠しているかどうかを知る必要があります。ただし、Classは何度もサブクラス化でき、class_conformsToProtocol()はスーパークラスで宣言されたプロトコルを無視します。 私はclass_getSuperclass()を使用して、スーパークラスがnilになるまで、階層内のすべてのクラスを再帰的にチェックすることができます。しかし、それは深くネストされたクラス階層にとって非効率的かもしれないのではないかと思います、そしておそらくそれを行うより良い方法があるでしょうか? 言い換えると、NSObjectメソッドはスーパークラスのプロトコルを見つけるためにObjective-Cランタイムメソッドを使用してどのようにしてconformsToProtocolを最適に実装するのですか? [myObject conformsToProtocol:@protocol(MyProtocol)]; クラス階層を再帰的に上っていく正しい方向に進んでいる場合は、お知らせください。


7
Objective-CとC ++の違いは何ですか?[閉まっている]
現在のところ、この質問は、Q&A形式には適していません。事実、参考文献、専門知識によって回答が裏付けられることを期待していますが、この質問は、討論、議論、投票、または拡張ディスカッションを求める可能性があります。この質問が改善され、場合によっては再開できると思われる場合は、ヘルプセンターにアクセスしてください。 7年前休業。 構文、機能、パラダイム、フレームワーク、ライブラリの点で、Objective-CとC ++の主な違いは何ですか? *重要:私の目標は、2つの言語間でパフォーマンス戦争を始めることではありません。本当の難しい事実だけが欲しい。実際、私の質問はパフォーマンスとは関係ありません!主観的に見える可能性のある情報源を教えてください。
171 c++  objective-c 

7
UIImageをNSDataに変換する
私はアプリでこのコードを使用しています。画像を送信するのに役立ちます。 ただし、画像付きの画像ビューがあります。appbundleにファイルはありませんが、画像は私の側にあります。以下のコードをどのように変更できますか?私は変換することができますどのように誰も私を伝えることができるmyimageのNSData? // Attach an image to the email NSString *path = [[NSBundle mainBundle] pathForResource:@"rainy" ofType:@"jpg"]; NSData *myData = [NSData dataWithContentsOfFile:path]; [picker addAttachmentData:myData mimeType:@"image/jpeg" fileName:@"rainy"];


16
Objective-CでnilとNULLを使用する必要があるのはいつですか?
これはサンプルコードです: NSDictionary *myDictionary = [NSDictionary dictionary]; NSNumber *myNumber = [myDictionary valueForKey: @"MyNumber"]; NSLog(@"myNumber = %@", myNumber); // output myNumber = (null) if (myNumber == nil) NSLog(@"test 1 myNumber == nil"); if (myNumber == NULL) NSLog(@"test 2 myNumber == NULL"); if ([myNumber isEqual:[NSNull null]]) NSLog(@"test 3 myNumber == [NSNull null]"); いつnil、NULL、[NSNull …
170 objective-c  null  nsnull 


20
コンテンツに合わせてUITableViewのサイズを変更する
に質問UILabelが表示されUITableView、各行に複数の選択肢が表示される複数の選択肢の回答が表示されるアプリを作成しています。質問と回答はさまざまですので、これはUITableView動的に変化する必要があります。 sizeToFitテーブルの回避策を見つけたいのですが。テーブルのフレームがすべてのコンテンツの高さに設定されている場所。 誰でも私がこれを達成する方法についてアドバイスできますか?

7
保存中のiphone Core Data Unresolvedエラー
保存しようとするとコアデータから奇妙なエラーメッセージが表示されますが、エラーを再現できないという問題があります(さまざまなタスクを実行すると、さまざまなタイミングで表示されます) エラーメッセージ: Unresolved error Domain=NSCocoaErrorDomain Code=1560 UserInfo=0x14f5480 "Operation could not be completed. (Cocoa error 1560.)", { NSDetailedErrors = ( Error Domain=NSCocoaErrorDomain Code=1570 UserInfo=0x5406d70 "Operation could not be completed. (Cocoa error 1570.)", Error Domain=NSCocoaErrorDomain Code=1570 UserInfo=0x14f9be0 "Operation could not be completed. (Cocoa error 1570.)" ); } エラーを生成するメソッドは次のとおりです。 - (IBAction)saveAction:(id)sender { NSError …

11
UITextFieldの初期キーボードアニメーションの遅延が非常に遅い/遅延
申し分なく、この問題は私に気が遠くなりました。 に触れてからキーボードがポップアップするまで、約3〜4秒かかりますUITextField。これは、アプリが起動してから初めてキーボードがポップアップしたときにのみ発生し、その後アニメーションが即座に開始されます。 最初は、画像またはmyをロードしすぎる問題だと思っていましたがUITableView、だけで新しいプロジェクトを作成したばかりでUITextField、まだこの問題が発生しています。iOS 5、Xcode ver 4.2を使用しており、iPhone 4Sで実行しています。 これは私のコードです: #import "ViewController.h" @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; UITextField *textField = [[UITextField alloc] initWithFrame:CGRectMake(20, 20, 280, 30)]; textField.borderStyle = UITextBorderStyleRoundedRect; textField.delegate = self; [self.view addSubview:textField]; } @end これはすべてのアプリに共通の問題ですか? 現在、私がそれをいくらか良くすることができる唯一の方法は、でtextField最初のレスポンダーになる/辞任するviewDidAppearことですが、それは問題を完全に解決するわけではありません-代わりにビューがロードされたときに遅延をロードするだけです。textFieldビューが読み込まれた直後にクリックしても、問題が発生します。ビューが読み込まれてから3〜4秒待ってからtextFieldに触れると、遅延が発生しません。

5
CGFloatとfloatの違いは何ですか?
あちこちでCGFloatを使用する傾向がありますが、これで意味のない「パフォーマンスヒット」が発生するのではないかと思います。CGFloatはfloatよりも「重い」ようですよね?どの時点でCGFloatを使用する必要がありますか、そして実際に何が違いますか?



4
NSDateFormatterロケールの「feechur」を処理する最良の方法は何ですか?
それはNSDateFormatter予期せずあなたに噛み付く「機能」を持っているようです:あなたが次のような単純な「固定された」フォーマット操作を行う場合: NSDateFormatter* fmt = [[NSDateFormatter alloc] init]; [fmt setDateFormat:@"yyyyMMddHHmmss"]; NSString* dateStr = [fmt stringFromDate:someDate]; [fmt release]; その後、米国およびほとんどのロケールで正常に動作します...電話が24時間地域に設定されているユーザーは、設定の12/24時間スイッチを12に設定します。結果の文字列の終わり。 (例えば、NSDateFormatterを参照してください、私は何か間違ったことをしていますか、これはバグですか?) (そしてhttps://developer.apple.com/library/content/qa/qa1480/_index.htmlを参照してください) どうやらAppleはこれを "悪い"と宣言している-Broken As Designedで、彼らはそれを修正するつもりはない。 回避策は明らかに、特定の地域、一般的には米国の日付フォーマッターのロケールを設定することですが、これは少し面倒です: NSLocale *loc = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US"]; [df setLocale: loc]; [loc release]; onsies-twosiesではそれほど悪くありませんが、私は約10の異なるアプリを扱っています。最初に見たアプリには、このシナリオのインスタンスが43あります。 マクロ/オーバーライドされたクラス/コードを不明瞭にすることなく、すべてを変更する労力を最小限に抑えるための賢いアイデアはありますか?(私の最初の本能は、NSDateFormatterをinitメソッドでロケールを設定するバージョンでオーバーライドすることです。alloc/ init行と追加されたインポートの2行を変更する必要があります。) 追加されました これは私がこれまでに思いついたものです-すべてのシナリオで機能するようです: @implementation BNSDateFormatter -(id)init { static NSLocale* en_US_POSIX = nil; NSDateFormatter* …

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