Xamarin. Mac geliştiricileri için macOS API 'Leri
Genel Bakış
Xamarin. Mac ile daha fazla bilgi edinmek için, temel API 'lerle ilgili önemli bir sorun olmadan C# dilinde düşünebilirsiniz ve yazabilirsiniz Objective-C . Ancak bazen, Apple 'dan API belgelerini okumanız, Stack Overflow bir yanıtı sorununuzun bir çözümüne çevirmeniz veya mevcut bir örnekle karşılaştırmanız gerekir.
Tehlikeli kadar okuma Objective-C
Bazen bir Objective-C tanım veya yöntem çağrısını okumak ve bunu eşdeğer C# yöntemine çevirmek gerekir. Bir Objective-C işlev tanımına göz atalım ve parçaları bölün. Bu Yöntem (içinde bir seçici ) üzerinde bulunabilir NSTableView :
- (BOOL)canDragRowsWithIndexes:(NSIndexSet *)rowIndexes atPoint:(NSPoint)mouseDownPoint
Bildirim soldan sağa okunabilir:
-Ön ek bir örnek (statik olmayan) yöntemi olduğu anlamına gelir. + bir sınıf (statik) yöntemi olduğu anlamına gelir(BOOL)dönüş türüdür (C# dilinde bool)canDragRowsWithIndexes, adın ilk kısmıdır.(NSIndexSet *)rowIndexesilk param ve bu türüdür. İlk parametre şu biçimdedir:(Type) paramNameatPoint:(NSPoint)mouseDownPointikinci param ve türüdür. Her parametre, ilki biçiminden sonra:selectorPart:(Type) paramName- Bu ileti seçicisinin tam adı:
canDragRowsWithIndexes:atPoint:. Sonunda,:önemli olduğuna dikkat edin. - Gerçek Xamarin. Mac C# bağlaması:
bool CanDragRows (NSIndexSet rowIndexes, PointF mouseDownPoint)
Bu seçici çağrısı aynı şekilde okunabilir:
[v canDragRowsWithIndexes:set atPoint:point];
- Örnek,
vcanDragRowsWithIndexes:atPointseçicisine sahip iki parametre ile çağırılırsetvepoint, geçirildi. - C# ' de, yöntem çağırma şöyle görünür:
v.CanDragRows (set, point);
Belirli bir seçici için C# üyesini bulma
Objective-CÇağırmak için gereken seçiciyi buldığınıza göre, sonraki adım buna eşdeğer C# üyesine eşleniyor. Deneyebileceğiniz dört yaklaşım vardır (örnekle devam edebilirsiniz NSTableView CanDragRows ):
Aynı ada sahip bir şeyi hızlıca taramak için otomatik tamamlama listesini kullanın. Bir örneği olduğunu öğrendiğimiz
NSTableViewiçin şunu yazabilirsiniz:NSTableView x;x.[liste görünmüyorsa CTRL + Ara alanı).CanDraggirmesini- Yönteme sağ tıklayın,
Exportsöz konusu özniteliği söz konusu seçiciyle karşılaştırabileceğiniz derleme tarayıcısını açmak için bildirime gidin
Tüm sınıf bağlamasını arayın. Bir örneği olduğunu öğrendiğimiz
NSTableViewiçin şunu yazabilirsiniz:NSTableView x;- Sağ tıklayın
NSTableView, derleme tarayıcısına bildirime git - Söz konusu seçiciyi arayın
Xamarin. Mac API çevrimiçi belgelerini kullanabilirsiniz.
miguel, belirli bir apı için arama gerçekleştirebilmeniz için Xamarin. Mac apı 'lerinin "Rosetta Stone" görünümünü sağlar. API 'niz AppKit veya macOS 'a özgü değilse, orada bulabilirsiniz.