問題タブ [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.

0 投票する
1 に答える
782 参照

ios - コアデータ-プロパティにアクセスした後でもオブジェクトデータに障害が発生するのはなぜですか?

Core Dataを使用していますが、データに障害があると説明されている管理対象オブジェクトがあります。
ドット構文でプロパティにアクセスしようとしましたが、nilです。-[object valueForKey:@"key"]
を使用する場合; オブジェクトが障害を発生させ、正しい値を取得します。それ以降、 object.keyを使用してアクセスでき、機能します。

プロパティにアクセスした後でもオブジェクトデータに障害が発生するのはなぜですか?

編集:最初に、問題のプロパティがNSDictionaryタイプであり、モデルでTransformableとして定義されていることを追加します。

コードは単純です。
NSDictionary *d = object.property;ここで、objectはCoreDataによって管理されるNSManagedObjectです。この行の後、dはnilです。

NSDictionary *d = [object valueForKey:@"property"]; この行の後、dは正しい値です。

0 投票する
3 に答える
1209 参照

objective-c - KVC を使用して UIButton のタイトルを変更するにはどうすればよいですか?

UIButton の配列があり、配列をループせずに、すべてのタイトルを一度に特定の値に設定したいと考えています。私が見つけた唯一の解決策は、キー値コーディングによるものです。つまり、次のようなものです。

ただし、ボタンのtitleLabelプロパティは読み取り専用であり、変更できません。ボタンのtitleプロパティをキーパスとして使用しようとしましたが、どちらも機能しません。

KVCを使用してすべてのボタンの「有効」プロパティを一度に変更することでこれを行ったことがありますが、うまく機能しましたが、タイトルを変更したい場合は機能しません(これはさまざまな状態の複数のタイトルを許可する UIButton の新しい ControlState 機能)。

それで、配列からすべてのボタンのタイトルを変更するためのワンライナーソリューション(ループなし)を持っている人はいますか?

0 投票する
1 に答える
284 参照

objective-c - [myArray objectAtIndex:i].kvc のプロパティ

このコードのkvcキー/キーパスを知っている人は誰でも

0 投票する
2 に答える
476 参照

objective-c - BOOLプロパティをNSArray全体に関連付ける最もクリーンな方法

相互に関連付けられたUIViewオブジェクトのコレクションを保持するNSArrayがいくつかあります(NSArrayはsoundView0、soundView1、soundView2、soundView3です)。配列内のUIViewを有効化/無効化するBOOLプロパティを配列全体に関連付けられるようにしたい。

これを達成するための最もクリーンで最も適切な方法は何ですか?

0 投票する
1 に答える
159 参照

xcode - CALayerの「+(id)defaultValueForKey」などでプリミティブなプロパティ値を返す方法は?

だから.. CALayerKVCの「拡張機能」は、すべての変人を処理します..

また、Apple のドキュメントは、値を指定しない場合にデフォルト値を参照するときに、構造体をエンコードする最善の方法をほのめかしています...

たとえば、キーの値が CGSize 構造体の場合、メソッドは NSValue オブジェクトにラップされた (0.0,0.0) を含むサイズ構造体を返します。

ただし、通常の悪臭を放つプリミティブを提供する方法がわかりません。CGFloat

@VALタイプNSNumberエンコーディングを試しましたが、

return ![key isEqualToString:@"lineWidth"] ?: @3;

実行可能なNSValue方法がなく、それらをキャストしようとする必死の試みでさえありませんid

return ![key isEqualToString:@"zPosition"] ?: (id)262453;// lol

どうしたんだ?これは、CALayer のオッド ボールの性質による、単なる「まあ、仕方ない」状況ですか? 私が恥ずかしいほど見落とした明らかな解決策はありますか?それとも、それ自体の欠点を文書化することを拒否する怪しげな API ですか?

0 投票する
2 に答える
1007 参照

objective-c - UIColor CGColor を削除 - KVC 警告

[[UIColor grayColor] CGColor]愚かな警告を削除するには?

タイプ「id」のパラメーターに「CGColorRef」(別名「struct CGColor *」)を送信する互換性のないポインタータイプ

ありがとう。

0 投票する
1 に答える
120 参照

iphone - valueForKeyPathを使用してKVCリリースオブジェクト?

_Obj_1_Obj_2などの名前のオブジェクトがたくさんあります
。すべてをリリースしたいと思います。

KVCを使用しています。特にすべてを解放するために、私は以下を使用します:

clangアナライザーは私に教えてください[obj release];

この時点で呼び出し元が所有していないオブジェクトの参照カウントの誤ったデクリメント?

どうすれば修正できますか?

ARCプロジェクトではありません。

0 投票する
1 に答える
937 参照

objective-c - NSDIctionary の数値で最大/最小を使用する際のエラー

したがって、新しいリテラル構文で辞書を作成します。

その後、次のように最大値を見つけたいと思います。

しかし、このエラーが発生しています:

[NSNumber numberWithInt:2] など、古い方法で実際に NSNumbers を作成しようとしました。

0 投票する
4 に答える
7804 参照

objective-c - カスタム クラス NSObject はキー値コーディングに準拠していません

重複の可能性:
オブジェクトがキー値コーディングに準拠していないのはなぜですか?

私は辞書を持っていて、キー/値をカスタム クラスに追加したいのですが、クラスが KVC に準拠していないというエラーが常に表示されますが、Apple のドキュメントにはそうあるべきであると記載されています。

私のコード:

ContactObject.h:

ContactObject.m:

私は非常に愚かな何かが欠けていると思います:)

よろしくお願いします...

こんにちは、マティアス

0 投票する
1 に答える
408 参照

nssortdescriptor - KVC を使用した MagicalRecord の並べ替え

KVCまでオブジェクトのプロパティにアクセスしていました。

私のオブジェクトには、次のようなメソッドがあります。

このメソッドをKVC使用して使用できます

しかし、私はNSFetchRequestController(このコードはMagicalRecordを使用して)を作成するために使用することはできません

これはエラーです: