問題タブ [kvc]
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 - KVC コンプライアンス テスト
Objective C クラスが 100% KVC に準拠しているかどうかをテストする、LLVM の静的アナライザーに似たツールはありますか?
objective-c - @synthesizedプロパティとKVC
@synthesizeで生成されたセッターはKVC準拠である必要がありますか?生成されたゲッターとセッターはKVCに準拠しているというステートメントを見つけましたが、このメソッドの1つを呼び出すべきではありませんか?
実装:
そしてそれをテストします:
xcode - XcodeでKVCを使用してTextLabelを更新しようとしています
KVCを使用してコードを実行する過程で値を更新しようとしているTextFieldがあります。残念ながら、初期値を超えて更新するものを取得できないようです。
コードを起動するボタンのバインディング、更新したいTextFieldを使用しましたが、更新したくないだけです。n00bishの質問をお許しください。しかし、私は1日中オンラインで検索し、チュートリアルを実行し、コードをさまざまな方法で書き直しており、この非常に単純なタスクが機能しない理由を理解できないようです。
これが私のKVC.hファイルです:
これが私のアプリヘッダーファイルです:
そして最後に、これが私が更新することができないコード内の関数です。
(ご覧のとおり、2つの異なる方法で更新を試みましたが、どちらも機能しません。割り当てによって初期変数が適切に設定されているようです。ログには、メソッド内にいることが示されています。ラベルを更新できません。割り当て)。
任意の考えやアイデアをいただければ幸いです。
objective-c - Objective-C & KeyValueCoding: valueForKeyPath: で例外を回避するには?
タイプのオブジェクトがありid
、指定された の値が含まれているかどうかを知りたいkeyPath
:
@try{ } @catch{}
ここで、指定されたキーパスが見つからない場合の例外を回避するために、ブロックにラップします。これを行うより良い方法はありますか?例外を処理せずに、指定されたキーパスが存在するかどうかを確認しますか?
どうもありがとう、
ステファン
objective-c - NSPredicate を使用した個別のオブジェクト
カスタム オブジェクトの NSArray があります。カスタム オブジェクトに PageNumber プロパティがあるとします。「customObject.PageNumber は個別です」のような条件で NSArray をフィルタリングしたいと思います。
配列をループして、ページ番号が重複しているオブジェクトを削除できることはわかっています。しかし、それを行う簡単な方法はありますか?私が試してみました、
一意のページ番号 (7、8、9 など) が表示されます。しかし、ページ番号だけでなく、カスタム オブジェクト自体が必要です。どんな述語でも私を助けることができますか?
objective-c - KVC コレクション オペレータの結合
iOS で KVC コレクション演算子を組み合わせることは可能ですか? 何かのようなもの:
現在、私は次のようにしています。
しかし、演算子を組み合わせるとパフォーマンスが向上するかどうか疑問に思っています。
html - GRMustache 形式の数値、または iOS の数値形式を備えた HTML テンプレート エンジン
これについてどうすればよいかわかりません。私はこれを独自の方法で解決しようとしましたが、これまでのところ失敗しました。GRMustache を使用してみfloat
ましたが、使用しようとしているテンプレートで見栄えの悪い s を表示しようとしていることに気付きました。
基本的に、テンプレートを介して HTML として出力しようとしているモデルがあります。理想的には、変数名/キーパスをテンプレートに入れるだけで、テンプレートは適切にレンダリングされた実際の値 (ほとんど) で解析されます。(float)9382.233325
しかし、私が使用しているモデルはすべての計算に float を使用しており、カンマ区切りの整数文字列 ( =>など)としてレンダリングしたいと思っています"9,382"
。
このような状況をカバーするドキュメントは GRMustache には見当たりませんが、これは珍しい要件ではないと思います。GRMustache または他の手法でこれを行う方法を知っている人はいますか?
ios - KVCコンプライアンス-iVarを宣言するためのガイドライン
私は2つの一般的な形式(さまざまな本、ブログなどで)で宣言されたプロパティをサポートしているivarを見てきました:
Appleのドキュメントによると、前者はKeyValueコンプライアンスに必要です
どれが最も適切ですか?
objective-c - NSArray の -valueForKey の問題: その項目が NSDictionary の場合
の項目を含む配列がありますNSDictionary
。項目を他のオブジェクトに変換したいのですが、最初に考えたのは です。そのため、のカテゴリ メソッドをvalueForKey:
追加し、次のように呼び出します。toMyObject
NSDictionary
[array valueForKey:@"toMyObject"]
しかし、それは期待どおりには機能せず、NSNull
s の配列を返すだけです。
配列を列挙したくない場合、この問題を解決するためのアイデアはありますか?
objective-c - 以前にアンロードしたバンドルをリロードすると KVO/KVC がクラッシュする
ロード可能なバンドルと KVO で問題が発生しています。-unload
インスタンスに KVO オブザーバーがアタッチされているクラスは、NSBundle のメソッドを介して安全にアンロードできないようです。
私は次のことをしています:
そして、バンドルのプリンシパル クラス-init
メソッドでは、
ループは何度も繰り返され、2 回目でクラッシュすることもあれば、30 回目にクラッシュすることもあります。
EXC_BAD_ACCESS シグナルを使用して、このバックトレースで常にクラッシュします。
この問題を示すサンプル プロジェクトは、こちらからダウンロードできます。
これは Cocoa のバグだと思いますが、ここで私が何かばかげたことをしているのかどうか、誰かにわかるだろうか?