1. ホーム
  2. ios

IOS - UITextViewからすべてのパディングを削除する。

2023-09-09 19:06:57

質問

UITextViewの左パディングを削除するためのSOには、多くの素晴らしい例があります。

UITextViewのマージン/パディングをなくすには?

しかし、右のパディングも削除する必要があります。

試してみたのですが...

[tv setContentInset: UIEdgeInsetsMake(-4,-8,-8,-X)];//where X is any integer

と、パディングを除去するための最後の2つの値のあらゆる並べ換えがありますが、何も動作しないようです。また

[tv sizeToFit];
[tv setTextAlignment:[NSTextAlignmentRight]];

テキストビューの以下のテキストに "00" と表示されています。

どのように解決するのですか?

iOS 7限定ですが、textViewのtextContainerInsetsをこのように設定するのが非常にきれいな解決方法です。

[textView setTextContainerInset:UIEdgeInsetsZero];
textView.textContainer.lineFragmentPadding = 0; // to remove left padding

これは、テキストビュー内のテキストの周りのすべてのパディング (インセット) を効果的に削除します。デプロイメント ターゲットが iOS 7+ である場合、これはこれまでのところ最良のソリューションです。