1.要点一:去除ListView的scrollBar,添加ScrollView的scrollBar:

<ScrollView android:layout_width="fill_parent"            android:layout_height="wrap_content"             android:layout_weight="1"             android:scrollbars="vertical">       <LinearLayout android:orientation="vertical"                      android:layout_width="fill_parent"                      android:layout_height="wrap_content">            <LinearLayout android:layout_width="fill_parent"                          android:layout_height="wrap_content"                          android:orientation="horizontal"                           android:paddingLeft="5dp" android:paddingRight="5dp"                           android:paddingTop="6dp" android:paddingBottom="6dp"                           android:background="@color/LightSteelBlue1">                        <TextView android:id="@+id/text" android:text="列表如下:"                            android:layout_width="wrap_content"  android:layout_height="wrap_content"                            android:textColor="@color/White" android:layout_marginLeft="10dp"                                                   android:gravity="center_horizontal"                            android:paddingTop="5dp" android:paddingBottom="5dp" android:clickable="true"/>           </LinearLayout>           <ListView android:id="@+id/list_alarm" android:layout_width="fill_parent"                      android:layout_height="wrap_content" android:layout_weight="1"                      android:cacheColorHint="@color/LightCyan2" android:scrollbars="none"/>        </LinearLayout></ScrollView>

2.要点二:(设置ListView的高度,否则只能显示1-2行)

在setAdapter之后,在设置ListView的高度(不是wrap_content),其高度 = 每行高度 * 行数 + 行间距 * (行数 - 1),用ViewGroup.LayoutParams 设置ListView 的高度

private void setAdapter(){ArrayAdapter<String> adapter = new ArrayAdapter<String>(MainActivity.this,android.R.layout.simple_list_item_1,listSource);mListView.setAdapter(adapter);setLvHeight();}private void setLvHeight(){ListAdapter adapter = mListView.getAdapter();if(adapter == null){ShowLog.d(TAG, "no data in ListView");return;}int totalHeight = 0;for(int i = 0;i < adapter.getCount(); i++){View itemView = adapter.getView(i, null, mListView);itemView.measure(0, 0);totalHeight += itemView.getMeasuredHeight();}ViewGroup.LayoutParams layoutParams = mListView.getLayoutParams();layoutParams.height = totalHeight + (mListView.getDividerHeight() * (adapter.getCount() - 1));//总行高+每行的间距mListView_Alarm.setLayoutParams(layoutParams);}

更多相关文章

  1. Android获取屏幕实际高度跟显示高度,判断Android设备是否拥有虚拟
  2. android中怎么调整字体的间距和行间距
  3. textview设置文本每行的行间距
  4. Android如何设置TextView的行间距、行高。
  5. Android设置TextView字间距与行间距
  6. Android中ListVIew高度自适应,解决ScrollView冲突问题以及Android
  7. android 获得屏幕宽度 高度
  8. 2010.12.19——— android 设置组件的高度
  9. Android中获取屏幕相关信息(屏幕大小,状态栏、标题栏高度)

随机推荐

  1. android MTP 过滤指定的文件格式
  2. Android中TextView中内容不换行的解决方
  3. Android(安卓)Handler 消息机制原理解析
  4. 简单实现Android顶部工具栏和底部工具栏(
  5. 【Android热修复与插件化 三】ClassLoade
  6. 介绍一个Android开源项目:GifView——Andr
  7. android 5.0多用户支持
  8. Android中做一个无标题窗口
  9. Android不依赖Activity的全局悬浮窗实现
  10. 使用eclipse打开android_sdk自带的例子