Change direction of disclosure triangle

2019-07-28 01:02发布

问题:

How can I change the direction of the disclosure triangle programmatically? In Interface Builder it's possible by changing the value "Control -> Layout" from "Left to Right" or "Right to Left".

I made a diff of a NIB file. The only change was NSCellFlags2.

Is this documented anywhere?

回答1:

The method you’re looking for is -[NSCell setUserInterfaceLayoutDirection:]. You need to obtain a reference to the corresponding cell and then send it the appropriate message. For example, considering disclosureButton points to that disclosure button:

[[disclosureButton cell] setUserInterfaceLayoutDirection:NSUserInterfaceLayoutDirectionRightToLeft];