Я использую TextView
внутри компонента «LabeledTextView» (в принципе, TextView, ярлык которого перемещается с одной стороны на другую при работе с изменениями макета, вызванными должным правом налево языки). Я использую это внутри ListView, и это встречающийся:TextView внутри CustomView внутри ListView усекается горизонтально
Последняя строка текста усекается по горизонтали. Возможно, это ошибка в Android TextView onMeasure()
?
Этот же самый компонент "LabeledTextView" используется в других ситуациях и работает совершенно нормально, так что я думаю, что это имеет какое-то отношение к взаимодействию между ним и ListView
.
Соответствующая часть элемента списка XML выглядит так:
<LinearLayout
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="400dp"
android:orientation="vertical" >
<com.test.library.view.LabeledTextView
android:id="@+id/sender"
android:layout_width="match_parent"
android:layout_height="wrap_content"
custom:label="@string/sender"
custom:labelWidth="130dp"/>
<com.test.library.view.LabeledTextView
android:id="@+id/message"
android:layout_width="match_parent"
android:layout_height="wrap_content"
custom:label="@string/message"
custom:labelWidth="130dp"/>
</LinearLayout>
Вы можете видеть, что в вмещающем LinearLayout я обеспечил высоту контейнера не сворачивание размера.
Обычай вид устанавливает LayoutParams
в WRAP_CONTENT
для высоты - вы можете видеть, что выращено быть почти правильный размер.
EDIT
При увеличении размера LabeledTextView однако вручную, то TextView
правильно отображение, так что я думаю, что по умолчанию onMeasure()
моего настраиваемого представления не правильно учет для TextView
порожденных высоты.
Ваша линейная высота листа равна 400 дп, почему бы не попробовать wrap_content? –
Я специально увеличил его с wrap_content, чтобы гарантировать, что контейнер не несет ответственности за поведение. – Graeme