簡體   English   中英

私有布爾值:如何使用Swift在SKCropNode上進行設置?

[英]Private Boolean: how to set on SKCropNode, with Swift?

SKCropNode工作原理是從其受影響的節點中刪除其源映像未涵蓋的所有內容。 這是一種掩膜,另一種是掩蓋此邏輯,並揭示源圖像未涵蓋的所有內容。

SKCropNode有一個布爾開關來設置此狀態,稱為invertMask ,足夠明智。

令人討厭的是它似乎是私人的

如果擱置所有應用商店批准過程,私有API的危險等,並接受測試是一件有趣的事情……而這僅是出於測試目的……

如何使用Swift將這個invertMask設置為true?

更新:

切向相似的問題還有其他答案:

如何在Swift中訪問iOS私有API?

但這對我無濟於事,也不是如何在Swift中設置布爾值(在這個特定問題中就是這個特定布爾值)的直接答案。

我在這里問了一個關於選擇器的問題,並接受了一個答案,該信息表明我不需要使用或理解選擇器即可實現該目標: SKAction中的選擇器是什么:perform(_:onTarget :)

但是看起來好像了解使用選擇器所需的確切語法才能在Swift中設置此布爾值。 我也不知道那是什么,或者怎么做。

但是(在Swift中)設置此布爾值的其他任何方法當然也可以。

根據最新的Xcode 8.1正式SKCropNode.h頭是下面這樣(與蘋果斯威夫特版本3.0.1建立8B62):

/**
 @header


 Node that can crop its children's contents with a mask


 @copyright 2011 Apple, Inc. All rights reserved.

 */

#import <SpriteKit/SKNode.h>
#import <SpriteKit/SpriteKitBase.h>

NS_ASSUME_NONNULL_BEGIN

/**
 A SpriteKit node that masks child nodes using another node's alpha component
 */
SK_EXPORT @interface SKCropNode : SKNode

/**
 SKNode to be used as the mask.

 The SKNode supplied as the mask must not be a child of another node, but it may have children. Anywhere the mask's output alpha component is less than 0.05 masks out that area for the SKCropNode's children. If the mask is nil, nothing is masked out.
 */
@property (nonatomic, retain, nullable) SKNode *maskNode;

@end

NS_ASSUME_NONNULL_END

如您所見,沒有關於invertMask ,很抱歉,但是我認為這是不可能的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM