您的位置:首页 > 其它

listView 动态设置高度

2015-01-26 21:52 204 查看
这个是设置当输入的文字达到软键盘的最底端的时候,防止其被软键盘挡住:

getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);

动态设置listview的高度:

if (null != list) {
			ListAdapter listAdapter = list.getAdapter();
			if (listAdapter == null) {
				return;
			}
			int totalHeight = 0;
			for (int i = 0; i < listAdapter.getCount(); i++) {
				View listItem = listAdapter.getView(i, null, list);
				listItem.measure(View.MeasureSpec.UNSPECIFIED,View.MeasureSpec.UNSPECIFIED);
				totalHeight += listItem.getMeasuredHeight();
			}
			ViewGroup.LayoutParams params = list.getLayoutParams();
			if (null != params) {
				params.height = totalHeight + list.getDividerHeight()
						* (listAdapter.getCount() - 1);
				View reminderLayout = findViewById(R.id.reminder_layout);
				int maxListHeight = 0;
				if (null != reminderLayout
						&& reminderLayout.getVisibility() == View.VISIBLE) {
					maxListHeight = mRecordShowHeight * (RECORD_ITEM_COUNT - 1);
				} else {
					maxListHeight = mRecordShowHeight * RECORD_ITEM_COUNT;
				}
				params.height = params.height > maxListHeight ? maxListHeight : params.height;
			}
		}


</pre><pre>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: