对于不同的控制状态和使用小数位数,ASButtonNodeattributedTitle出现问题。标题变为左移。

如果对按钮使用磅值,则行为正确。

我正在运行texture/asyncDisplayKit 2.8.1

/* Set title */
testButton.setAttributedTitle(NSAttributedString(string: "NORMAL"), for: .normal)
testButton.setAttributedTitle(NSAttributedString(string: "HIGHLIGHTED"), for: .highlighted)

/* styling */
/** This works
 * testButton.style.width = ASDimensionMake("120pt")
 **/
testButton.style.width = ASDimensionMake("30%")
testButton.style.height = ASDimensionMake(120)


点击按钮后,标题不应向右移动。我想念什么吗?

高亮后状态

ios - ASButtonNode attributedTitle用于不同的controlStates-LMLPHP

高亮前状态

ios - ASButtonNode attributedTitle用于不同的controlStates-LMLPHP

最佳答案

也许您可以在alignment上指定paragraphStyle

let paragraphStyle = NSMutableParagraphStyle()
paragraphStyle.alignment = .center

let attributes = [ ... your current style,
                  .paragraphStyle: paragraphStyle] as [NSAttributedString.Key: Any]
]

let attributedString = NSAttributedString(string: "your text here", attributes: attributes)



您可以为每个状态创建2个attributedString,然后为各个状态分别设置

testButton.setAttributedTitle(normalAttributedString, for: .normal)
testButton.setAttributedTitle(highlightedAttributedString, for: .highlight)


快乐纹理

关于ios - ASButtonNode attributedTitle用于不同的controlStates,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56439080/

10-09 10:21