14

UITextViewさまざまなサイズの s がいくつかあるアプリがあります。UITextView十分に小さいのに font.pointSize が十分に大きい場合、テキスト ビューを埋めるのに十分な大きさのテキストの後にスペースを追加する方法はないようです。

例えば:

ここで何が起こっているのかを把握しようとしています。通常のデバッグ文字列を入力し始め、「What」と入力してスペース キーを押したところ、スペースが表示されませんでした (ただし、これは通常のことです)。「the」と入力すると、前の単語の末尾に追加されたように見えました。案の定、スペースがありませんでした。戻ってスペースを追加することもできます。スペースを追加したら、ワードラップとして他のスペースを追加して有効にすることができます。

もう 1 つの不思議な動作は、スペースをダブルタップしても末尾にピリオドが追加されないことです。最後の文字をピリオドに置き換えます。つまり、「What」+スペース+スペースは「Wha」になります。

今、私は自動的にフォントのサイズを変更して、テキストが妥当な範囲内で提供されたスペースを埋めるように、フォントサイズでいくつかの興味深いことを行っていますが、それを無効にしても動作を再現できます. 唯一の違いは、単語が 1 行に収まるのではなく、次の行に折り返されることです。

たとえば、「What」+スペース+「the」と入力すると、最初の行に「What」、2行目に「the」を含む「Whatthe」が表示されます(ただし、「the.」の先頭しか表示されません)。さらに、 からのログ情報を次に示しtextViewDidChange:ます。

Character    textView.text.length
---------    --------------------
W            1
h            2
a            3
t            4
<space>      4
t            5
h            6
<space>      7    <----  Here's a wierd one . . . now spaces all
?            8           work fine unless it's resizing
4

1 に答える 1