2016-07-19 3 views

答えて

0

あなたは完全なテキストキットのスタックを使用してテキストを自分自身にレイアウトする必要があります。 Appleは数年前にa WWDC videoのテキスト切り詰めのためにこれを行う方法を説明しました。あなたがこれを行うことができます

+1

[実際のWWDCのビデオ](httpsを使用します://developer.apple.com/videos/play/wwdc2013/220/)がここにあります! – D4ttatraya

0

一つの方法は、ラベルの最大文字数を持っており、その数にテキストを取るなど「...さらに見る」テキストを追加します:

label.text = randomPost.text.substring(0, maxChars) + "... See more" 

。なお、私はSwiftの部分文字列をどのように扱うかについてのメモを書き留めています。私が提供している署名は、そのアイディアを伝えようとしているかもしれません。

+0

さまざまなデバイスでmaxCharsを知る方法を教えてください。 – venky

+0

[This(http://stackoverflow.com/questions/25193520/determine-the-maximum-number-of-characters-a-uilabel-can-take)UILabelが取ることができる文字の最大数を与えるでしょう! – D4ttatraya

+0

@venkyそれは別の質問です。あなたが使用しているデバイスを見つけるためのさまざまな方法があります。 – rigdonmr

1

これを行うには、NSTextContainerを使用する必要があります。あなたはそれから作ることができる https://developer.apple.com/reference/uikit/nstextcontainer

:あなたは、そのような円形にあなたのテキストを形成するものとして、これで三角形をかなり派手なものを行うことができ、またはあなたが

...と考えることができます何でもUIBezierPathここでは、Appleのドキュメント をです

右下に「もっと見る」ボタンがあります。

テキストが(lineBreakModeを参照)大きすぎる場合は、その後

テキストが収まる場合seeMoreButton.enabled = true

でボタンを有効

seeMoreButton.enabled = false

関連する問題