我需要在我的启动画面上添加商标上标,所以我在xml的TextView中添加了2个片段,如下所示:
<textView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" textAlignment="center" id="258" translatesAutoresizingMaskIntoConstraints="NO" fixedFrame="YES" usesAttributedText="YES" selectable="NO" editable="NO">
<rect key="frame" x="20" y="460" width="374" height="128"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinX="YES" flexibleMaxY="YES"/>
<color key="backgroundColor" colorSpace="calibratedWhite" white="0" alpha="0"/>
<textInputTraits key="textInputTraits" autocapitalizationType="sentences"/>
<attributedString key="attributedText">
<fragment content="TrademarkedName ">
<attributes>
<color key="NSColor" colorSpace="calibratedRGB" red="1" green="1" blue="1" alpha="1"/>
<font key="NSFont" name="HelveticaNeue" family="Helvetica Neue" size="20"/>
<paragraphStyle key="NSParagraphStyle" alignment="center" lineBreakMode="wordWrapping" baseWritingDirection="natural"/>
</attributes>
</fragment>
<fragment content="TM">
<attributes>
<color key="NSColor" colorSpace="calibratedRGB" red="1" green="1" blue="1" alpha="1"/>
<font key="NSFont" name="HelveticaNeue" family="Helvetica Neue" size="12"/>
<paragraphStyle key="NSParagraphStyle" alignment="center" lineBreakMode="wordWrapping" baseWritingDirection="natural"/>
</attributes>
</fragment>
</attributedString>
</textView>
然而,“TM”正在与文本的底部基线对齐。
我如何在XML中上标这个“TM”文本片段以将其垂直对齐到顶部和\或将其基线设置为垂直顶部?
答案 0 :(得分:2)
在XCode上测试,没有Xamarin。
您需要添加:<integer key="NSSuperScript" value="1"/>
。
<fragment content="TM">
<attributes>
<color key="NSColor" colorSpace="calibratedRGB" red="1" green="1" blue="1" alpha="1"/>
<font key="NSFont" name="HelveticaNeue" family="Helvetica Neue" size="12"/>
<paragraphStyle key="NSParagraphStyle" alignment="center" lineBreakMode="wordWrapping" baseWritingDirection="natural"/>
<integer key="NSSuperScript" value="1"/>
</attributes>
</fragment>
我是怎么得到它的?
修改 Interface Builder 中的attributedText
并不容易,这很难(在那个用户上并不是非常友好的用户)。
所以我在这种情况下做的是打开TextEdit.app,做我想做的事情并将其复制/粘贴到attributedText
框中。
然后我只需打开 Interface Builder 文件作为源代码,找到它并给你一行。
我猜你可以玩1的值,我会让你试试。