[解決済み] Objective-C 2.0でメソッドに非推奨のフラグを立てるにはどうすればよいですか?
2022-04-30 08:53:36
質問
私はかなり大規模なiPadアプリを開発しているチームの一員で、その結果、多くの異なるクラスが作成されました。 しかし、より良い(新しい)メソッドがあり、それを代わりに使用する必要があります(古いメソッドのいくつかは実際に新しいメソッドを呼び出しますが、クラス全体のインターフェイスは混乱しています)。
特定のメソッドを非推奨としてマークする方法はありますか(たとえば
@deprecated
はJavaで
[Obsolete]
.NETの場合)。
AppleはAvailability.hを使って、次のようなタグを持っていますね。
__OSX_AVAILABLE_BUT_DEPRECATED(__MAC_NA,__MAC_NA,__IPHONE_2_0,__IPHONE_3_0);
...これは唯一の方法ですか(+これを行うにはApp Store安全ですか)、またはXcodeで警告をフラグする代替手段がありますか?
解決方法は?
非推奨の構文
メソッドを非推奨としてマークするための構文が用意されています。
@interface SomeClass
-method __attribute__((deprecated));
@end
または
#include <AvailabilityMacros.h>
@interface SomeClass
-method DEPRECATED_ATTRIBUTE; // or some other deployment-target-specific macro
@end
関連
-
[解決済み] Objective-CでNSStringsを連結するためのショートカット集
-
[解決済み] Objective-Cの定数
-
[解決済み] Objective-Cで、ある文字列が他の文字列を含んでいるかどうかを調べるにはどうすればよいですか?
-
[解決済み] メソッドを廃止または非推奨としてマークする方法は?
-
[解決済み] Objective-Cのtypedef enumとは何ですか?
-
[解決済み] SwiftからObjective-Cのコードを呼び出すにはどうしたらいいですか?
-
[解決済み] なぜJavaのVector(およびStack)クラスは時代遅れ、または非推奨とされているのですか?
-
[解決済み] UIDevice uniqueIdentifierは非推奨 - どうしたらいいの?
-
[解決済み] Objective-C用JSONパーサーの比較(JSON Framework、YAJL、TouchJSON、etc.)
-
[解決済み] iPhoneのSafariで<body>に適用したoverflow:hiddenは機能するのか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] UIScrollViewでスクロールの方向を見つける?
-
[解決済み] iOSシミュレータでファイルシステムを確認する方法はありますか?
-
[解決済み] UITextFieldのキーボードの種類をプログラムで変更する
-
[解決済み] CGFloatとfloatを使うことの違いは何ですか?
-
[解決済み] モバイルSafari(iPhone)でテキストエリアのインナーシャドウを除去する
-
[解決済み] UISearchDisplayController/UISearchBarでNSFetchedResultsController(CoreData)をフィルタリングする方法
-
[解決済み] iOSアプリでターゲットのバージョン/ビルド番号をプログラム的に表示するには?
-
[解決済み] drawRectを使うか使わないか(drawRect/Core Graphicsとsubview/imagesをいつ使うか、なぜ使うか)?
-
[解決済み] iOSアプリをクラッシュさせる確実な方法とは?
-
[解決済み] iOSで入力の文字色を無効にする