- 7
- 0
- 约6.11千字
- 约 12页
- 2021-03-23 发布于山东
- 举报
ListView 和 ScrollView 的冲突解决办法
ListView 本身就含有 ScrollView ,因此把 ListView 放到 ScrollView 中会引起混乱(谁来响应滑动事件?)但有时又
确有此需求,以实现 ListView 的内容连同其他内容的滚动。
要想把 ListView 嵌入 ScrollView, 有二个方法:
方法 1:整体上使用一个 ListView, 把不需滚动的部分放入
ListView 的 Header 或 Footer 中。
注意 : 一定要先添加 HearderView 和 FooterView, 然后再设
置 ListView 的 Adapter.
缺陷 : Header 或 Footer 中的内容不能滚动;并且只能允许
同时存在一个 ListView 。
代码如下 :
LayoutInflater mLI =
(LayoutInflater)context.getSystemService(Context.LAYOU T_INFLATER_SERVICE);
listView = (ListView) findViewById(R.id.listView);
datas = new ArrayListlt;Objectgt;();
fillDatas();
datasAdapter = new DemoListAdapter(context,
datas);
MyListHeaderView headerView = mLI.inflate(R.layout.my_header_layout, null);
FillDataToHeaderView(headerView);
MyListFooterView footerView =
mLI.inflate(R.layout.my_footer_layout, null); FillDataToFooterView(footerView); listView.addHeaderView(headerView); listView.addFooterView(footerView); listView.setAdapter(datasAdapter);
方法 2:用 LinearLayout 模拟 ListView, 从而实现任意内容
的滚动。
下面实现的是一个通用的 LinearLayoutForListView ,可以为
它设置不同的 Adapter 从而显示不同的数据。
LinearLayoutForListView 的代码如下 : public class LinearLayoutForListView extends android.widget.LinearLayout {
static final String LOG_TAG =
LinearLayoutForListView;
private android.widget.BaseAdapter adapter; private OnClickListener onClickListener = null; public void fillLinearLayout() {
int count = adapter.getCount();
for (int i = 0; i lt; count; i++) {
View v = adapter.getView(i, null, null); v.setOnClickListener(this.onClickListener); addView(v, i);
}
Log.v(countTAG, + count);
}
public LinearLayoutForListView(Context context) { super(context);
}
public LinearLayoutForListView(Context context, AttributeSet attrs) {
super(context, attrs);
}
public android.widget.BaseAdapter getAdpater() { return adapter;
}
public void setAdapter(android.widget.BaseAdapter adpater) {
this.adapter = adpater;
fillLinearLayout();
}
public OnClickListener getOnclickListner() { return onClickListener;
}
public void setOnclickLinstener(OnClickList
您可能关注的文档
最近下载
- 可摘局部义齿修复工艺技术——第十章义齿带入后问题分解.pptx VIP
- 2025年江西新能源科技职业学院单招职业技能测试题库及答案1套.docx VIP
- 胶合板行业的生产管理流程.docx VIP
- 学前儿童家庭与社区教育慕课版全套教学课件.pptx
- 2022年-2024年青岛卫健委事业编护理笔试真题.docx VIP
- 汉责文化打屁股.pptx VIP
- 可摘局部义齿修复工艺技术应用第十章义齿带入后问题-.pptx VIP
- 2025年浙江省公务员省考《行测》联考真题(A类)(含答案).docx VIP
- 2《宁夏闽宁镇昔日干沙滩,今日金沙滩》公开课一等奖创新教案+(共40张)+随堂练习(含答案).docx VIP
- 全新世中期西辽河流域聚落选址与环境解读.pdf VIP
原创力文档

文档评论(0)