【问题标题】:Is it possible to expand listview item (textView) to include all input?是否可以扩展列表视图项(textView)以包含所有输入?
【发布时间】:2014-01-23 17:23:04
【问题描述】:

基本上,如果用户要在其中输入大量文本,我的 listView 项目就会被截断。我一直在寻找解决方案,但找不到解决方案,因此希望这对其他人也有帮助。

我已将 textView 和 ListView 设置为 wrap_content 我已将 textView 设置为 android:singleLine="false"

我的单个列表项的 xml:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >


<TextView
android:id="@+id/tvItem"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/bDelete"
android:layout_alignBottom="@+id/bDelete"
android:layout_toLeftOf="@+id/bDelete"
android:layout_alignParentLeft="true"
android:layout_marginLeft="10dp"
android:text="Medium Text"
android:textAppearance="?android:attr/textAppearanceMedium" />

<Button
android:id="@+id/bDelete"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:textSize="15dp"
android:layout_alignParentTop="true"
android:layout_marginRight="5dp"
android:text="DONE" />

</RelativeLayout>

整个主屏幕布局的我的xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" 
android:background="@drawable/artport">

<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
>

<Button
android:layout_alignParentRight="true"
android:id="@+id/bAdd"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Add" />

<EditText
android:id="@+id/myEditText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/bAdd"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_toLeftOf="@+id/bAdd"
android:contentDescription="@string/addItemContentDescription"
android:ems="10"
android:hint="@string/addItemHint" />

</RelativeLayout>   


<LinearLayout 
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center">
<ListView
android:id="@+id/myListView"
android:layout_width="match_parent"
android:layout_height="0dip"
android:layout_weight="1" 
/>

<Button
android:id="@+id/bClearedList"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_above="@+id/ad"
android:layout_weight="0"
android:text="View Deleted Items" />

<com.google.ads.AdView
android:id="@+id/ad"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="0"
ads:adSize="BANNER"
ads:testDevices="TEST_EMULATOR, TEST_DEVICE_ID"
ads:adUnitId="ca-app-pub-XXXXXXXXXXXXXXXXXXX"
ads:loadAdOnCreate="true"
android:layout_alignParentBottom="true"
>
</com.google.ads.AdView>
</LinearLayout>


</LinearLayout>

【问题讨论】:

  • 你的代码有什么问题??
  • 好吧,图片说明了一切,textView 正在被截断
  • 你是否在你的 ListView 中夸大了 listitem 布局? @毕达哥拉斯

标签: android xml listview textview expand


【解决方案1】:

删除

android:layout_alignBottom="@+id/bDelete"

在你的 TextView 中

【讨论】:

  • 这实际上是这个 imo 的合法答案,快速、精确且显然被低估了(为我解决了同样的问题,我不必用标记的答案覆盖我的代码来获得工作)。
【解决方案2】:

为您的列表项尝试以下代码:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_gravity="center_horizontal"
    android:gravity="center" >

    <TextView
        android:id="@+id/tvItem"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_marginLeft="10dp"
        android:gravity="center_vertical"
        android:layout_toLeftOf="@+id/bDelete"
        android:text="Medium Text"
        android:textAppearance="?android:attr/textAppearanceMedium" />

    <Button
        android:id="@+id/bDelete"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_marginRight="5dp"
        android:layout_alignBaseline="@+id/tvItem"
        android:text="DONE"
        android:gravity="center_vertical"
        android:textSize="15dp" />

</RelativeLayout>

【讨论】:

  • 很高兴为您提供帮助::) @Pythagoras
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-10-09
  • 1970-01-01
  • 2017-07-17
  • 1970-01-01
  • 2013-10-02
  • 2023-03-08
  • 2021-09-27
相关资源
最近更新 更多