テキストビューに3行だけのテキストを表示する可能性があるのか、さらに詳細なボタンをクリックすると3行以上のテキストが含まれているテキスト全体に展開されるのだろうと思っていました。スウィフト内でどのようにこれは可能ですか、ポッドやプラグインはありませんか?拡張する方法 - SwiftでUITextViewを折りたたむ?
ありがとうございました。
テキストビューに3行だけのテキストを表示する可能性があるのか、さらに詳細なボタンをクリックすると3行以上のテキストが含まれているテキスト全体に展開されるのだろうと思っていました。スウィフト内でどのようにこれは可能ですか、ポッドやプラグインはありませんか?拡張する方法 - SwiftでUITextViewを折りたたむ?
ありがとうございました。
他のサードパーティのライブラリを使用せずにこれを行うには、最も簡単な方法は、UITextViewのフレームを調整することです。私のサンプルコードでは、私はストーリーボードにTextViewとButtonを持っています。ボタンを押すとonReadMoreが呼び出されます。私はちょうど折りたたまれているときはサイズとして40を、展開するときには200を使用します。
class ViewController: UIViewController
{
@IBOutlet weak var textView: UITextView!
override func viewDidLoad()
{
super.viewDidLoad()
let frame = textView.frame
let newRect = CGRectMake(frame.origin.x, frame.origin.y, 200, 40)
textView.frame = newRect
}
@IBAction func onReadMore(sender: AnyObject)
{
let frame = textView.frame
if frame.height < 180
{
textView.frame = CGRectMake(frame.origin.x, frame.origin.y, 200, 180)
}
else
{
textView.frame = CGRectMake(frame.origin.x, frame.origin.y, 200, 40)
}
}
}
拡張された高さが不明/動的な場合はどうなりますか? – Sneha
フレームの高さをベースとして使用して固定数を追加することができます。 –
これはあなたを助けることができる - http://stackoverflow.com/questions/38244707/simplest-way-to-implement-a-read-more-button-to-expand-a-uitextview-in-ios -swi – Santosh
私は外部ライブラリを使用したくない... – Caspert
@Caspertあなたはライブラリを見ることができ、どのコードを使用したいのか分かります... –