У меня есть предложение, слова которого состоят из отдельных видов текста, как рассчитать правильное расстояние между TextViews? - PullRequest
0 голосов
/ 25 февраля 2019

По какой-то причине предложения в моем приложении состоят из отдельных TextView, по одному на каждое слово.Конечно, созданное таким образом предложение должно выглядеть так, как если бы оно было одной строкой в ​​TextView.Для этого мне нужно добавить каждому текстовому представлению определенное значение для атрибута «padding right».В окончательной версии это расстояние должно быть точно таким же, как если бы оно было строкой в ​​TextView.Я не хочу оценивать значение для этого расстояния, есть ли формула, которая приводит к правильному результату?

TextViews просто сгруппированы в LinearLayout горизонтальной ориентации

 <LinearLayout
        style="@style/phraseCardViewSubContainer">
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/word1G"
            />
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/word2G"
            />
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/word3G"
            />
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/word4G"
            />
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/word5G"
            />
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/word6G"
            />
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/word7G"
            />
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/word8G"
            />
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/word9G"
            />
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/word10G"
            />
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/word11G"
            />
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/word12G"
            />

    </LinearLayout>

1 Ответ

0 голосов
/ 25 февраля 2019

Вы можете создать текстовое представление с вашими объектами гарнитуры, установить его текст в качестве пробела (или любого другого размера пробела) и измерить его ширину следующим образом:

textView.setText(" ");
textView.measure(0, 0);       //must call measure!
yourInt = textView.getMeasuredWidth();

Затем использовать это значение для созданияпромежутки между вашими другими текстовыми представлениями.

Я не уверен, как dp влияет на это ... другим способом было бы просто поместить это текстовое представление между каждым из ваших слов-текстовых представлений и сделать текст невыбираемым.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...