【发布时间】:2017-09-20 17:33:32
【问题描述】:
我有以下Relativelayout,其中包含带有标签的Linearlayout。此Relativelayout 推送到自定义适配器中的自定义ListView。本来想一一看到Relativelayouts,结果得到this
<?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:minWidth="25px"
android:minHeight="25px"
android:padding="8sp">
<LinearLayout
android:orientation="vertical"
android:minWidth="25px"
android:minHeight="25px"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
<TextView
android:text="Водомер 1"
android:textAppearance="?android:attr/textAppearanceLarge"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingBottom="4sp"
android:layout_toRightOf="@id/linearLayout1"
<TextView
android:text="Последняя поверка:"
android:textAppearance="?android:attr/textAppearanceSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/linearLayout1"
<TextView
android:text="Последние показания:"
android:textAppearance="?android:attr/textAppearanceSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/linearLayout1"
<TextView
android:text="Текущие показания:"
android:textAppearance="?android:attr/textAppearanceSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/linearLayout1"
</LinearLayout>
<ImageView
android:src="@android:drawable/ic_menu_gallery"
android:layout_width="76sp"
android:layout_height="76sp"
android:paddingRight="13sp"
android:layout_alignParentRight="true"
</RelativeLayout>
目标布局看起来像这样。如果我将此 ListView 设置为任何其他自定义视图,它看起来很好。
<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:minWidth="25px"
android:minHeight="25px"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:columnCount="1"
app:rowCount="7">
<TextView
android:text="Список водомеров"
android:layout_width="match_parent"
app:layout_rowWeight="0.05"
android:gravity="center_horizontal"/>
<ListView
android:minWidth="25px"
android:minHeight="25px"
app:layout_rowWeight="0.3"
android:layout_width="match_parent"
android:choiceMode="singleChoice" />
<TextView
android:text="Введите показания водомера"
app:layout_rowWeight="0.02"
android:layout_width="match_parent"
android:gravity="center" />
<EditText
android:inputType="number"
app:layout_rowWeight="0.04"
android:layout_width="match_parent"/>
<Button
android:text="Сделать фото"
android:textSize="20dp"
app:layout_rowWeight="0.02"
android:layout_width="match_parent"
android:gravity="center"/>
<Button
android:text="Отправить показания"
android:textSize="24dp"
app:layout_rowWeight="0.15"
android:layout_width="match_parent"
android:gravity="center"/>
<Space
app:layout_rowWeight="0.3" />
</android.support.v7.widget.GridLayout>
我该如何解决这个问题?
【问题讨论】:
-
你为什么不使用recyclerView,这是你问题的最佳解决方案。试试看this,你会明白的。
-
我认为问题是由 ListView 上方的 TextView 引起的。您应该在开发人员选项中启用“显示布局绑定”功能,以便您可以看到导致问题的视图。访问此处了解如何启用“显示布局绑定”:youtube.com/watch?v=OGqJhK0FTjw。希望对您有所帮助
-
@LQGioan 是的,这是小费。所以现在看起来 like 我的行已添加到 TextView,而不是 ListView
-
是的,它在我们开发布局时非常有用。使用
app:layout_rowWeight="xxx"时应考虑。取决于你的目标,你应该使用另一种方式来做到这一点。 -
您可以更新您的问题(包括答案),以便有相同问题的其他人可以快速解决他们的问题
标签: android listview xamarin adapter android-relativelayout