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

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

7
Objective-Cで経過時間を取得する
たとえば、UIViewの外観とユーザーの最初の反応など、2つのイベント間の経過時間を取得する必要があります。 Objective-Cでそれを実現するにはどうすればよいですか?
153 ios  objective-c 

6
iPhoneのObjective-Cでメソッド名をNSLogする
現在、クラス名とログのソース行番号を出力する拡張ログメカニズムを定義しています。 #define NCLog(s, ...) NSLog(@"<%@:%d> %@", [[NSString stringWithUTF8String:__FILE__] lastPathComponent], \ __LINE__, [NSString stringWithFormat:(s), ##__VA_ARGS__]) たとえば、NCLog(@ "Hello world");を呼び出すと、出力は次のようになります。 <ApplicationDelegate:10>Hello world 次のように、メソッド名もログアウトしたいと思います。 <ApplicationDelegate:applicationDidFinishLaunching:10>Hello world したがって、どのメソッドが呼び出されているかを知ることができれば、デバッグが容易になります。Xcodeデバッガーもあることは知っていますが、ログアウトしてデバッグしたい場合もあります。

7
なぜivarを使うのですか?
私は通常、この質問が別の方法で尋ねられるのを見ます。たとえば、すべてのivarはプロパティである必要がありますか?(そして私はこのQに対するbbumの答えが好きです)。 私はコードでほとんど排他的にプロパティを使用しています。ただし、iOSで長い間開発を続けており、伝統的なゲームプログラマーである請負業者と一緒に仕事をすることがよくあります。ほとんど何もプロパティを宣言せず、ivarsに依存するコードを書いています。私は彼がこれを行うのは、1。)プロパティがObjective C 2.0(2007年10月)まで常に存在しなかったために慣れていることと、2。)ゲッター/セッターを通過しないことによる最小限のパフォーマンスの向上のためです。 彼はリークしないコードを書いていますが、私は彼にivarよりもプロパティを使用することを好みます。私達はそれについて話しました、そして彼は多かれ少なかれKVOを使っていなかったのでプロパティを使う理由がないと見ています、そして彼はメモリ問題の世話をした経験があります。 私の質問はもっと...なぜあなたはこれまでにivar期間を使いたいと思うでしょう-経験の有無にかかわらず。ivarの使用が正当化されるパフォーマンスの大きな違いは本当にありますか? また、明確にするために、必要に応じてセッターとゲッターをオーバーライドし、ゲッター/セッター内のそのプロパティと相関するivarを使用します。ただし、getter / setterまたはinit以外では、常にself.myProperty構文を使用します。 編集1 良い反応をありがとうございました。正しくないように思われる問題に対処したいのは、ivarを使用するとカプセル化が発生し、プロパティを使用しない場合です。クラスの継続でプロパティを定義するだけです。これにより、外部からプロパティが非表示になります。プロパティをインターフェースでreadonlyと宣言し、実装でreadwriteとして再定義することもできます: // readonly for outsiders @property (nonatomic, copy, readonly) NSString * name; そしてクラスの継続に持っています: // readwrite within this file @property (nonatomic, copy) NSString * name; 完全に「プライベート」にするには、クラスの継続で宣言するだけです。

6
静的ライブラリのObjective-Cカテゴリ
静的ライブラリをiPhoneプロジェクトに適切にリンクする方法を教えてください。アプリプロジェクトに追加された静的ライブラリプロジェクトを直接依存関係(ターゲット->一般->直接依存関係)として使用し、すべて正常に機能しますが、カテゴリは機能します。静的ライブラリで定義されたカテゴリがアプリで機能していません。 だから私の質問は、いくつかのカテゴリを持つ静的ライブラリを他のプロジェクトに追加する方法ですか? そして一般的に、他のプロジェクトのアプリプロジェクトコードで使用するベストプラクティスは何ですか?

16
UILabelに小さいアイコンを埋め込む方法
UILabeliOS7 に小さなアイコン(カスタムの箇条書きの一種)を埋め込む必要があります。インターフェイスデザイナーでこれを行うにはどうすればよいですか?または、少なくともコードでは? アンドロイドであるleftDrawableとrightDrawableラベルのために、それはiOSの中でどのように行われますか?Androidのサンプル:

5
NSStringが特定の他の文字列で始まるかどうかを確認する方法は?
URLとして使用する文字列がhttpで始まるかどうかを確認しようとしています。現在確認しようとしている方法が機能していないようです。これが私のコードです: NSMutableString *temp = [[NSMutableString alloc] initWithString:@"http://"]; if ([businessWebsite rangeOfString:@"http"].location == NSNotFound){ NSString *temp2 = [[NSString alloc] init]; temp2 = businessWebsite; [temp appendString:temp2]; businessWebsite = temp2; NSLog(@"Updated BusinessWebsite is: %@", businessWebsite); } [web setBusinessWebsiteUrl:businessWebsite]; 何か案は?

9
iPhone:最後の画面タッチからのユーザーの非アクティブ/アイドル時間の検出
ユーザーが一定期間画面に触れなかった場合に、特定のアクションを実行する機能を実装した人はいますか?私はそれを行うための最良の方法を見つけ出そうとしています。 UIApplicationには、この多少関連するメソッドがあります。 [UIApplication sharedApplication].idleTimerDisabled; 代わりに次のようなものがあればいいでしょう: NSTimeInterval timeElapsed = [UIApplication sharedApplication].idleTimeElapsed; 次に、タイマーを設定してこの値を定期的にチェックし、しきい値を超えたときに何らかのアクションを実行します。 うまくいけば、それが私が探しているものを説明しています。誰かがすでにこの問題に取り組んでいますか、またはあなたがそれをどのように行うかについて何か考えを持っていますか?ありがとう。

6
isKindOfClassとisMemberOfClassのiOSの違い
違いは何であるisKindOfClass:(Class)aClassとisMemberOfClass:(Class)aClassの機能は?私はそれが小さなもののようであることを知っています、一方はグローバルで、もう一方はクラスの完全一致ですが、どちらを指定するかを誰かに指定する必要があります。 Swift isKind(of aClass: AnyClass)およびisMember(of aClass: AnyClass)。


20
NSAttributedStringのboundingRectWithSizeが誤ったサイズを返す
属性付き文字列の四角形を取得しようとしていますが、boundingRectWithSize呼び出しは渡したサイズを考慮せず、高さが大きい(長い文字列である)のではなく、1行の高さの四角形を返します。高さの非常に大きな値と、以下のコードのように0を渡して実験しましたが、返される四角形は常に同じです。 CGRect paragraphRect = [attributedText boundingRectWithSize:CGSizeMake(300,0.0) options:NSStringDrawingUsesDeviceMetrics context:nil]; これは壊れていますか、それともラップされたテキストの四角形を返すために何か他のことをする必要がありますか?

10
カスタムセルなしでUITableViewCellでテキストを折り返す方法
これはiPhone 0S 2.0にあります。2.1の回答も問題ありませんが、テーブルに関する違いは知りません。 にはデフォルトでUITableViewCellが含まれているため、カスタムセルを作成せずにテキストを折り返すことができるように思えUILabelます。カスタムセルを作成すれば機能させることができることはわかっていますが、それは私が達成しようとしていることではありません。現在のアプローチが機能しない理由を理解したいのです。 ラベルがオンデマンドで作成されることを理解しました(セルはテキストおよびイメージアクセスをサポートしているため、必要になるまでデータビューを作成しません)。そのため、次のようにします。 cell.text = @""; // create the label UILabel* label = (UILabel*)[[cell.contentView subviews] objectAtIndex:0]; 次に、有効なラベルを取得しますが、その設定numberOfLines(およびlineBreakMode)が機能しません-単一行のテキストを取得します。にはUILabel、テキストを表示するための十分な高さがあります。単にの高さに大きな値を返していますheightForRowAtIndexPath。

7
コードでiOSプロジェクトの現在のバージョンを取得するにはどうすればよいですか?
NSStringファイルのどこかに定数を定義しなくても、iOSプロジェクト/アプリの現在のバージョンをオブジェクトとして取得できるようにしたいと考えています。2か所のバージョン値を変更したくない。 プロジェクトターゲットの概要にバージョンを追加するときに、値を更新する必要があります。
151 ios  objective-c  iphone  swift 

15
iOSでHTMLをNSAttributedStringに変換する
私はのインスタンス使用していますUIWebViewいくつかのテキストを処理し、それを正しく色を、それをHTMLとして結果を与えるのではなく、それを表示するよりも、UIWebView私が使用してそれを表示したいCore TextとNSAttributedString。 作成して描画することはできNSAttributedStringますが、HTMLを属性付きの文字列に変換してマップする方法がわかりません。 Mac OS X NSAttributedStringにはinitWithHTML:メソッドがあることを理解していますが、これはMacのみの追加であり、iOSでは使用できません。 これと同様の質問があることも知っていますが、答えはありませんでしたが、もう一度やり直して、誰かがこれを行う方法を作成したかどうか、作成した場合は共有できるかどうかを確認します。

6
enumerateObjectsUsingBlockとforを使用する場合
明らかな違いに加えて: enumerateObjectsUsingBlockインデックスとオブジェクトの両方が必要な場合に使用します enumerateObjectsUsingBlockローカル変数を変更する必要がある場合は使用しないでください(これは間違っていました。bbumの回答を参照してください) enumerateObjectsUsingBlock一般に、うまくいく場合は、より良いか悪いかと考えられますかfor (id obj in myArray)?長所/短所は何ですか(たとえば、多かれ少なかれパフォーマンスが良いなど)?


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