0

我正在开发和创建一个包含 ImageView 和 TextView 的 ListActivity 的 android 应用程序。还可以拖放这些对象以便移动它们。我现在想做的是在屏幕底部有一个按钮,而不是列表。

当用户滚动时,按钮将始终停留在那里。我找到了这个链接,但是当我执行这个链接所提示的操作时,没有出现任何按钮,而是出现了一个巨大的空白区域,占据了屏幕的四分之一。谁能指出我正确的方向?

好的,这里是设置为 ListActivity 的 .xml 文件

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content">
<DragNDrop.DragNDropListView
    android:id="@+id/android:list"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
  </DragNDrop.DragNDropListView>
</LinearLayout>

希望它可以帮助

4

2 回答 2

4

你的视图应该是这样的:

<?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="fill_parent" >
<Button 
     android:id="@+id/btn"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:layout_alignParentBottom="true"
     android:text="Button"
     android:layout_centerHorizontal="true"/>
 <ListView 
     android:layout_width="fill_parent"
     android:layout_height="fill_parent"
     android:layout_above="@+id/btn"/>
</RelativeLayout>

使用数据填充列表视图,并查看按钮将在其位置,尽管列表正在滚动。

于 2012-07-26T11:20:48.550 回答
0

我认为 ListActivity 是一种不好的做法。 您需要做的是将Activity从ListActivity更改为Activity。在布局文件中,执行以下操作:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_contant"
    android:orientation="horizontal">
 <DragNDrop.DragNDropListView
   android:id="@+id/android:list"
   android:layout_width="fill_parent"
   android:layout_height="wrap_contant">
 </DragNDrop.DragNDropListView>
 <Button 
    android:id="@+id/btn"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Button"/>
</LinearLayout>

在创建时,您可以通过执行以下操作获取列表参考:

ListView lv = (ListView)findViewById(R.id.list); 

为了使按钮可点击,用户 OnClickListener

于 2012-07-26T11:23:10.933 回答