問題タブ [class-cluster]
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.
ios - UILabel などで NSString サブクラスを使用する
追加のデータをエンコードする必要がありますNSString
(長い話です。理由は聞かないでください...)
ここでNSString
概説する方法を使用してサブクラス化しました:
これらのサブクラスの 1 つをテキストとして割り当てるとUILabel's
、ラベルのテキストを尋ねたときに返されることが期待されます。しかし、そうではありません。(代わりに NSString クラスター インスタンスを取得します)
これに対する回避策はありますか?
ios - Objective-Cで使用するときにプライベートクラスを非表示にするにはどうすればよいですか?
質問
Objective-Cで使用するときにプライベートクラスを非表示にするにはどうすればよいですか?
たとえば、以下に示すよう
PrivateFilter
に、非表示にしたいクラスです。
CustomFilter
私が作った、オープンなクラスです。
GPUImageFilter
も公開されている Github で公開されているクラスです。CustomFilter
の機能を実際にラップしますPrivateFilter
。
可能な解決策
したがって、2 つの解決策があります。
解決策 1: クラス クラスタ
Apple ドキュメントの例を見てA Composite Object: An Example
ください。手順に従って、次のコードを作成しました。
しかし、なぜかうまくいかないので、解決策 2 を試します。
解決策 2: PrivateFilter で初期化する
これは機能しますが、で使用するのは非常に奇妙alloc
ですinit
。だから私は解決策3を試します。
解決策 3: ファクトリ クラス メソッド
これは機能しますが、クラス クラスターと同様に継承できませんでした。
質問を繰り返す
最善の解決策はどれですか?または、他に良い解決策はありますか?