問題タブ [nscopying]
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 で copyWithZone: をオーバーライドする
どうすればオーバーライドできるか教えてもらえますか-copyWithZone:
クラスメンバーとして NSString オブジェクト、 NSInteger オブジェクトが 1 つあると仮定します。
objective-c - Objective-c: ディクショナリ キーとしてのカスタム クラス インスタンスは、キーが存在する場合に nil を返します
辞書のキーとしてインスタンスを使用しているカスタム クラスがあります。nil
問題は、キーが実際にディクショナリにあるときに、カスタム インスタンス キーの 1 つを使用してディクショナリから値を要求することがある (常にではありません) ことです。カスタムオブジェクトを辞書キーとして使用する方法についてWebを見回しましたが、見つけたのは、NSCopying
プロトコルを実装する必要があるということだけです。
私のクラスは次のようになります。
次に、これらのいくつかを次のような変更可能な辞書に入れます。
今私がやりたいことは、辞書からキーと値のペアをポップすることです。そのため、次のようにします。
そして、ここで私は問題に遭遇します。 ほとんどの場合、これで問題なく動作します。ただし、 をobjectForKey:theKey
返すこともありますnil
。コードにブレークポイントを設定しましたが、theKey
実際にtheDict
.
ここで何が間違っていますか?
objective-c - NSCopying および NSObject に準拠するプロトコルのセレクター 'copy' の既知のインスタンス メソッドはありません
行の下のコードをコンパイルすると、id copiedData = [_localData copy];
「セレクター 'コピー' の既知のインスタンス メソッドがありません」というコンパイラ エラーが発生します。それ_localData
がタイプid<IGTestClassData>
でありIGTestClassData
、両方に準拠している場合NSCopying
、NSObject
なぜcopy
メソッドがないのですか?
IGTestClass.h ファイル
IGTestClass.m ファイル
ios - Warning : "Sending 'NSObject *' to parameter of incompatible type 'id'
I am struck in this warning for many hours... Am getting
The code is,
Warning :
"Sending 'NSObject *' to parameter of incompatible type 'id'
Passing argument to parameter aKey
here
ios - EKEvent をコピーする方法、または NSCopying プロトコルに準拠させる方法はありますか
EKEvent のインスタンスを保持していて、それをコピーしたいと考えています。しかし、EKEvent が NSCopying プロトコルに準拠していないことがわかったので、EKEvent にカテゴリを追加してこのプロトコルに準拠させようとしましたが、eventIdentifier は読み取り専用属性であるため、このメソッドは失敗しました。
そうする方法はありますか?
ios - MPMoviePlayerController を他のクラスにコピーする
私は次のシナリオを持っています
クラスに MPMovieController があり、正常に再生されています。ボタンをクリックすると、そのMPMovieControllerを他のクラスに移動し、そのクラスのビューに追加したいこのために、私はこれを行いました
問題は、その MPMovieController オブジェクトを他のクラス (otherclass ビューにサブビュー MPMoviePlayer オブジェクトのビューを追加) に追加するときに、最初のクラスから削除されることです。同じ参照を渡している可能性があります。したがって、MPMovieController のコピーを作成してから、元のオブジェクトを変更しないように 2 番目のクラスに渡したいと考えています。これどうやってするの。