У меня есть довольно простой ListView строки:RelativeLayout TextViews перекрывающихся
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<TextView
android:id="@+id/tournament_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:textSize="25dp" />
<TextView
android:id="@+id/tournament_winner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:textSize="25dp" />
</RelativeLayout>
Когда текст "@+id/tournament_name"
долго - она пересекается с одной из "@+id/tournament_winner"
, и я не понимаю, почему.
Я пробовал использовать android:singleLine="false"
безрезультатно. Я также пробовал использовать android:inputType="textMultiLine"
, так как в документе указано, что android:singleLine="false"
устарел, но затем я получаю предупреждение: Attribute android:inputType should not be used with <TextView>: Change element type to <EditText> ?
так что здесь неплохо.
Я также пробовал использовать android:ellipsize="end"
, но это не сработает. Я предполагаю, что это потому, что текст слева TextView ("@+id/tournament_name")
НЕ достаточно длинный, чтобы заполнить всю ширину ListView
(какой код здесь не посеял).
Я был уверен, что если я использую android:layout_width="wrap_content"
, то два поля TextView не должны перекрываться.
Вот пример (см вторую строку):
Любые дальнейшие идеи, как это можно исправить?
Не ошибется ли это во время компиляции? tournament_winner еще не существует, так как можно что-то согласовать с ним? – Vas
Это описано в ответе здесь: https://stackoverflow.com/a/11594737/369480 Вам нужно убедиться, что вы указали + в ID. – gnuf
Kudos to ndroid: layout_toLeftOf = "@ id/tournament_winner". он работает –