8

Monotouch の最新バージョンをインストールしましたが、ビルドをデバイスにデプロイしようとすると、次のエラーが表示されるようになりました。

エラー MT4112: レジストラが無効な型を検出しました ObjectiveC にエクスポートできるようにするには、ジェネリック型引数 'T' に参照型の制約が必要です。(MT4112)

ここでクラスに where 句を追加する必要があるようですが、Monotouch では機能しないようです。

public class NotificationObject<T> : NSObject
{
    public T Data { get; set; }
}
4

1 に答える 1

10

これは、MonoTouch 6.0.2の既知の問題です。

NSObject の汎用サブクラスの作成、または汎用クラスの ObjectiveC へのエクスポートはサポートされていないことに注意してください。うまくいくかもしれませんし、不可解にランダムにクラッシュするかもしれません。

将来的には、エクスポートされたジェネリック クラスの少なくともいくつかのシナリオをサポートする予定ですが、当面のロードマップには含まれていないため、タイムラインはまだありません。

于 2012-10-04T08:03:30.117 に答える