listview Button始终放在底部
来源:互联网 发布:查看oracle数据库版本 编辑:程序博客网 时间:2024/04/28 00:53
android实现底部布局往往使用RelativeLayout的布局方式,并且设置android:layout_alignParentBottom=”true”,这样很容易实现底部布局。然而对于比较复杂的布局简单的属性设置无法达到这样的效果,例如top,center,bottom三层的布局,很可能因为中间层(center)的数据太多而将无法显示全或者将bottom层挤下去。解决这个问题,在采用RelativeLayout布局时,除了设置android:layout_alignParentBottom=”true”外,还需要对中间层进行属性进行设置:android:layout_above=”@id/bottom”
android:layout_below=”@id/top”。这样的设置即确保center层能处于中间位置,也可以通过自适应显示滚动条。
android:layout_below=”@id/top”。这样的设置即确保center层能处于中间位置,也可以通过自适应显示滚动条。
以下的例子就是实现三层布局的底部布局的功能。如图1,2。
图-1 三层的底部布局界面
图 2 弹出输入法时显示的底部按钮
项目只是实现主要的数据填充及布局,故只是简单的文件加载。以下是源码:
1.BottomTestActivity.java
- package com.BottomTest.main;
- import java.util.ArrayList;
- import java.util.HashMap;
- import android.app.Activity;
- import android.os.Bundle;
- import android.widget.ListView;
- import android.widget.SimpleAdapter;
- publicclass BottomTestActivityextends Activity {
- /** Called when the activity is first created. */
- @Override
- publicvoid onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- ListView list = (ListView) findViewById(R.id.friends);
- //存储数据的数组列表
- ArrayList<HashMap<String, Object>> listData=new ArrayList<HashMap<String,Object>>();
- String []name={"William","Charles","Linng","Json","Bob","Carli"};
- String []id={"12","16","33","21","34","22"};
- for(int i=0;i<6;i++){
- HashMap<String, Object> map=new HashMap<String, Object>();
- map.put("friend_image", R.drawable.icon);
- map.put("friend_username", name[i]);
- map.put("friend_id", id[i]);
- listData.add(map);
- }
- //适配器
- SimpleAdapter listItemAdapter=new SimpleAdapter(this,
- listData,
- R.layout.item,
- new String[] {"friend_image","friend_username","friend_id" },
- newint[] { R.id.friend_image, R.id.friend_username, R.id.friend_id });
- list.setAdapter(listItemAdapter);
- }
- }
主要布局文件
2.main.xml
- <?xmlversion="1.0"encoding="utf-8"?>
- <LinearLayout
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:orientation="vertical">
- <RelativeLayoutandroid:id="@+id/bottom"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content" >
- <LinearLayoutandroid:id="@+id/top"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:orientation="horizontal" >
- <EditTextandroid:id="@+id/view_user_input"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:layout_marginTop="6dip"
- android:layout_marginLeft="12dip"
- android:singleLine="true"
- android:numeric="integer"
- android:imeOptions="actionDone"
- android:hint="输入用户ID"
- android:layout_weight="1"/>
- <Buttonandroid:id="@+id/view_user"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:layout_marginTop="4dip"
- android:layout_weight="3"
- android:text="查看"/>
- </LinearLayout>
- <LinearLayoutandroid:id="@+id/center"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:orientation="vertical"
- android:layout_above="@id/bottom"
- android:layout_below="@id/top">
- <TextViewandroid:id="@+id/my_friends_list"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:text="好友列表"
- android:paddingTop="6dip"
- android:paddingLeft="2dip"
- android:layout_marginLeft="10dip"/>
- <ListViewandroid:id="@+id/friends"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:layout_marginBottom="6dip"/>
- </LinearLayout>
- <LinearLayoutandroid:id="@+id/bottom"
- android:background="@drawable/bg"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:orientation="horizontal"
- android:layout_alignParentBottom="true" >
- <Buttonandroid:id="@+id/refresh"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:layout_marginTop="2dip"
- android:text="刷新用户列表"
- android:layout_weight="1"/>
- <Buttonandroid:id="@+id/back"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:layout_marginTop="2dip"
- android:text="返回"
- android:layout_weight="1"/>
- </LinearLayout>
- </RelativeLayout>
- </LinearLayout>
listview item内容的布局文件
3.item.xml
- <?xmlversion="1.0"encoding="utf-8"?>
- <RelativeLayoutxmlns:android="http://schemas.android.com/apk/res/android"
- android:id="@+id/RelativeLayout"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:paddingBottom="4dip"
- android:paddingRight="12dip">
- <ImageViewandroid:id="@+id/friend_image"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:paddingTop="6dip"
- android:paddingLeft="2dip"
- android:layout_centerVertical="true"
- android:layout_alignParentLeft="true"/>
- <TextViewandroid:id="@+id/friend_username"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:textSize="18dip"
- android:textColor="#ccc"
- android:paddingTop="6dip"
- android:paddingRight="2dip"
- android:layout_toRightOf="@id/friend_image" />
- <TextViewandroid:id="@+id/friend_id"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:layout_below="@+id/friend_username"
- android:layout_marginRight="36dip"
- android:paddingRight="2dip"
- android:layout_toRightOf="@id/friend_image"
- android:textColor="#fff"
- android:maxLines="2"/>
- </RelativeLayout>
- listview Button始终放在底部
- 一篇Listview Button始终放在底部的好文章
- android中listView下有Button按钮始终在最底部
- android中listView下有Button按钮始终在最底部
- iOS—在tableView上实现始终在屏幕底部有一个button的效果
- css 让页脚始终在底部
- <footer>始终在页面底部
- android Button 始终在底端
- listview底部添加"更多"button
- 在ListView存在下如何在布局底部放一个子布局
- div居底,始终在屏幕的底部
- div始终显示在页面底部
- 怎么让footer始终在页面底部?
- CSS让脚部始终在页面底部
- 让底部DIV在未满屏下始终居底部
- 如何将网页底部始终固定在页面底部而不是浏览器底部
- Android将ButtonBar放在屏幕底部
- Android将ButtonBar放在屏幕底部
- 离10000小时的差距
- java上传图片文件
- 机房收费系统个人版---存储过程+事务回滚
- Android Application Fundamentals
- 明日黄花?---诺基亚
- listview Button始终放在底部
- Ubuntu 10.04地址导航栏修改为显示路径
- Mysql net start mysql启动,提示发生系统错误 5 拒绝访问 解决之道
- 第四章 例4.8
- 突然有种可以重新开始的感觉
- 广度优先遍历
- 中关村-DIY电脑之BIOS的电源管理(Power Management)
- 朴槿惠今天在清华演讲 韩官员称因系习近平母校
- linux spi子系统(框架) .