問題タブ [objective-c]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
objective-c - Objective-C で NSArray を新しい NSArray にフィルタリングする
があり、特定の基準を満たす元の配列からNSArray
新しいオブジェクトを作成したいと思います。NSArray
基準は、 を返す関数によって決定されますBOOL
。
を作成しNSMutableArray
、ソース配列を反復処理して、フィルター関数が受け入れるオブジェクトをコピーし、その不変バージョンを作成できます。
より良い方法はありますか?
objective-c - Objective-C でプロパティを自動的に追加するにはどうすればよいですか?
クラスに新しいプロパティを追加するとき、xcode で同じことを何度も入力していることに気付きます。
add TYPE *NAME;
(.h インターフェース内)add @property (nonatomic, retain) TYPE *NAME;
(.h)add @synthesize NAME;
(.m)add [NAME release];
(.m dealloc で)
(私はガベージコレクションされていない環境にいます。)
どうすればこれを自動的に行うことができますか?
iphone - 多くの不要なフレームワークが iPhone アプリに読み込まれます - これを防ぐことはできますか?
iPhone アプリに不要なフレームワークがたくさん読み込まれているようです。私は Xcode でそれらに対してリンクしていませんでしたし、それらは必要ありません。
iPhoneでそれらに対して「lsof -p」を実行すると、説明できないこれら(およびその他)が表示されます。
- コアビデオ
- AddressBookUI
- JavaScriptコア
- モバイルシンク
- EAP8021X
- Bluetoothマネージャー
- ミュージックライブラリ
- CoreAudio
- モバイルミュージックプレーヤー
- 住所録
- コアテレフォニー
- モバイルBluetooth
- カレンダー
- テレフォニーUI
- ウェブコア / ウェブキット
- メディアプレーヤー
- ビデオツールボックス
これが起動時間の遅さの原因なのだろうか。私のアプリはとてもシンプルです。基本的には Twitter のような投稿クライアントです。唯一のマルチメディア機能は、カメラまたはライブラリから画像を選択することであり、単純な NSURL / NSURLConnection 関数を使用してデータをいくつかの Web サービスに投稿します。
これは脱獄された 2.1 iPhone で、Cydia からいくつかのアプリがインストールされています。これは正常ですか?
objective-c - 反復中にNSMutableArrayから削除する最良の方法は?
Cocoaで、NSMutableArrayをループして特定の基準に一致する複数のオブジェクトを削除する場合、オブジェクトを削除するたびにループを再開せずにこれを行うための最良の方法は何ですか?
ありがとう、
編集:明確にするために-私は最良の方法を探していました。たとえば、現在のインデックスを手動で更新するよりもエレガントな方法を探していました。たとえば、C++では次のことができます。
objective-c - Objective-C を使用して実行時にセレクタを動的に作成するにはどうすればよいですか?
SEL
を使用してコンパイル時に を作成する方法は知っています@selector(MyMethodName:)
が、やりたいことは から動的にセレクターを作成することですNSString
。これは可能ですか?
私は何ができますか:
私がやりたいこと: (疑似コード、これは明らかに機能しません)
Apple API ドキュメントを検索してきましたが、コンパイル時の@selector(myTarget:)
構文に依存しない方法は見つかりませんでした。
c++ - C++ よりも Objective-C を使用する利点は何ですか?
Objective-C についての言及は聞いたことがありますが、自分で使用したことはありません。一般的に、またC++に関連して、みんなの意見がどうなのか興味がありました。より有用またはより有用でないプロジェクトのタイプはありますか?
objective-c - XcodeデバッガでNSDictionary変数の内容を表示するには?
Xcode デバッガーを使用して NSDictionary 変数のキーと値のペアを表示する方法はありますか? 変数ウィンドウで完全に展開されたときの情報の範囲は次のとおりです。
辞書の各要素が表示されることを期待していました(配列変数に似ています)。
objective-c - setPrimitiveValue:forKey: および対多関係
Apple のドキュメント-setPrimitiveValue:forKey:
は、対多関係を管理するために使用する場合、2 つの点であいまいです。
最初に彼らは次のように述べています:
対多関係を新しい NSMutableSet オブジェクトに設定しようとすると、(最終的には) 失敗します。
最終的?!それは一体何の意味ですか?後で失敗し-[NSManagedObjectContext save:]
ますか? 管理対象オブジェクトがフォルトになり、ページインされたときは? いつ?オンデマンドで一貫して障害を再現するテスト ケースを作成できますか?
次に、このケースを正しく処理するためのサンプル コードを提供すると、次のように書かれています。
最初に既存のセットを取得します
primitiveValueForKey:
(メソッドが返されないことを確認してくださいnil
)
メソッドがnil を返す場合はどうすればよいですか? assert()
オブジェクトグラフ全体が破損し、保存するとデータが失われるため、すぐに失敗しますか? NSAssert()
発信者への警告としてそれをオンにしますが、押し続けます(黙って何もしません)?
今のところNS[Mutable]Set
、その場合は次のように直接直接割り当てています。
それは間違っていますか?
ios - カスタム セルを使用せずに UITableViewCell でテキストをラップするにはどうすればよいですか
これはiPhone 0S 2.0です。テーブルに関する違いはわかりませんが、2.1の回答も問題ありません。
a にはデフォルトで aUITableViewCell
が含まれているため、カスタム セルを作成せずにテキストを折り返すことができるはずです。UILabel
カスタムセルを作成すれば機能することはわかっていますが、それは私が達成しようとしていることではありません-現在のアプローチが機能しない理由を理解したい.
ラベルはオンデマンドで作成されることがわかりました (セルはテキストと画像へのアクセスをサポートしているため、必要になるまでデータ ビューは作成されません)。
その後、有効なラベルを取得しますが、その設定numberOfLines
(および lineBreakMode) が機能しません。まだ 1 行のテキストが表示されます。には、テキストを表示するための十分な高さがあります。UILabel
高さに大きな値を返しているだけですheightForRowAtIndexPath
。
objective-c - NSMutableArray オブジェクトを渡す
私はポインターランドで迷子になっていると思います。私はこれを持っています (コード構文が少しずれている可能性があります。このコードを搭載したマシンは見ていません...しかし、関連する詳細はすべて正しいです):
私は彼らがそれを別のクラスのルーチンに渡します
しかし、コードが呼び出しルーチンに戻ると、[tmp count] は 0 です。
私は何か非常に単純でありながら非常に基本的なものを見逃しているに違いありませんが、私の人生ではそれを見ることができません。誰かが私が間違っていることを指摘できますか?
編集: www.stray-bits.com は、私がそれへの参照を保持しているかどうかを尋ねました。あなたの言いたいこと、または私がそれを正しくやったかどうか。
EDIT2: マイク・マクマスターとアンディ -- あなたたちの言うことはおそらく正しいでしょう。私はここにコードを持っていません (同僚のマシン上にあり、彼らはその日のうちに出発しました)、配列に値を入力するために、decoder(?) オブジェクトを使用する行に沿って何かを行っていました。
この関数の目的は、iPhone からファイルを開き、そのファイルを配列に読み込むことです (これは、プログラムの前回の実行で保存したオブジェクトの配列です)。その「デコーダー」には、データを配列に入れるメソッドがあります。
男、私はこれを完全に解体しました。皆さんがフォローできることを本当に願っています。アドバイスをありがとう。詳しく見ていきます。