首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

安卓ListView包装在父级中,而不应该

将其直接放在ScrollView中。这是因为ListView本身已经具有滚动功能,将其放在ScrollView中会导致滚动冲突,影响用户体验。

ListView是安卓开发中常用的列表视图控件,用于展示大量数据,并支持滚动浏览。它可以自动回收和重用视图,提高列表的性能和效率。

将ListView放在ScrollView中会导致两个滚动控件的嵌套,这样会造成滚动冲突。当用户滚动ListView时,ScrollView也会尝试滚动,导致滚动不流畅,甚至无法滚动。

为了解决这个问题,可以直接将ListView放在一个父级布局中,而不是放在ScrollView中。如果需要在ListView上方或下方添加其他视图,可以使用LinearLayout或RelativeLayout等布局容器来包装ListView和其他视图。

在安卓开发中,如果需要实现一个可滚动的页面,可以直接使用ScrollView作为父级布局,然后在ScrollView中添加其他视图组件,如TextView、ImageView等。但是,当需要展示大量数据列表时,应该使用ListView或RecyclerView等专门的列表视图控件,而不是将它们放在ScrollView中。

推荐的腾讯云相关产品:腾讯云移动应用分析(MTA),它提供了丰富的移动应用数据分析功能,帮助开发者深入了解用户行为,优化产品体验。产品介绍链接地址:https://cloud.tencent.com/product/mta

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

学习笔记 | Android Studio开发入门经验总结 干货

前言 最近完成了移动编程课程的学习,加上其它开发项目的经历,感觉收获颇为丰富。故在此总结整理开发中比较常见的一些问题,技巧和指南。...DISTRIBUTION表示如果支持该版本以上设备,则预估能支持设备占所有设备的百分比。...3.2 项目文件及目录结构简介 应用配置文件AndroidManifest.xml: 用于配置名、应用权限、应用图标及名称、主题等基本信息,此外包括了应用的Activity相关配置,没有在此进行注册的...程序代码java: 在java目录下的对应存放包括Activity在内的各java程序文件。...和ListView类似,要将数据适配到视图上进行展示需要使用适配器Adapter,不同的是RecyclerView的BaseAdapter已经将viewholder模式封装好了,目前RecyclerView

2.4K60

React-Native 通用化建设与性能优化

,我们的解决方案是:react-native bundle本地分包策略 一般基础压缩以后有150k左右,较复杂的业务所分离出的业务体积最多也不到100k。...前端数据缓存优化以及cgi图片预加载,客户端提前加载cgi的预加载优化 针对端提出的端react-native上下文预加载优化 接下来具体介绍针对端提出的端react-native上下文预加载优化...端打点后可以发现在ReactActivity的onCreate方法,耗时最多的是 createRootView()和startReactApplication()这两个操作 对于白屏的问题我们的优化方案是...因为短视频项目使用的是listView组件ListView 首次加载时都默认最多加载 initialListSize 个子项,所以能保证启动速度,但是在滑动的过程中会逐渐向 ListView 添加子项...所以若应用ListView 的子项数量特别多,ListView 滑动过程内存会逐渐上涨,离开react-native-view后内存也不会快速释放,所以就是出现之前内存测量的奇怪问题 listView

5K00
  • 1000套(Android)毕业设计(带论文)、大作业、实例快速下载 (Android Studio)

    实例或大作业 开发-ViewFlipper水平滑动.zip 198 实例或大作业 开发-ViewPager嵌套ListView实现了下拉刷新和上拉更多,解决了冲突的问题。....+gson) .zip.zip 201 实例或大作业 开发-PullToRefresh下拉刷新详细注释版.zip 202 实例或大作业 开发-listview上拉和下拉刷新项目.zip.zip....zip.zip 926 实例或大作业 开发-Android 图片缓存、加载器.zip.zip 927 实例或大作业 开发-ViewPager嵌套ListView实现了下拉刷新和上拉更多,解决了冲突的问题...-Gallery3D.zip 1004 实例或大作业 开发-listview上拉刷新.zip.zip 1005 实例或大作业 开发-samsung android 蓝牙4.0开发工具和BLE例子...开发-listview上拉和下拉刷新项目.zip.zip 1022 实例或大作业 开发-手机摇一摇DEMO代码,实现摇一摇执行特定程序.zip.zip 1023 实例或大作业 开发-Android

    3.1K30

    Android学习--ListView

    这篇文章用于总结自己这两天学到的ListView和RecyclerView 的笔记,以及从我这个iOS开发者的角度去理解和学习这两个控件,会比较一下他们个iOS那些控件是一致的,可以用来对比的。...一:ListView 最简单的用法    ListView最简单的用法无非就是用它写一个最基本的列表界面,展示的数据也就是我们最基本和常见的单条数据,一步一步的走下去:         ListView...的创建,先说说它的布局的创建,直接代码了,很简单的一个ListView的宽、高和id: image.png 布局文件创建完之后就是我们的在MainActivity的注册了,一些自己理解的注释都在下面...在iOS,(如果你懂iOS)你肯定知道我们的TableView用的很多时候,需要你去自定义Cell,我们下面说的自定义ListView的适配器就是我们iOS说的自定义Cell,这个才是重点,相信你也知道...onItemClick()方法,这个方法里面的参数如下,你可以Command + (点击OnItemClickListener)方法进去看看这个onItemClick里面的参数,要让你完全记住怎么写,我觉得挺难的,学会看类的方法是不错的一个方法

    1.1K90

    【Android】Android开发架构规范【转】

    这里整理一下自己android开发的一些规范。希望对各位有帮助。 命名规范 命名规范 名全部采用小写 主名采用[公司性质].[公司名称]....继承自组件的类,一般采用类名作为后缀, 例如:class LoginActivity extends Activity{} 自定义异常必须以Exception结尾 全局变量添加所有者前缀:实例成员变量前缀...图片的.9处理 使用静态变量方式实现界面间共享要慎重 单元测试(逻辑测试、界面测试) 不要重用类的handler,对应一个类的handler也不应该让其子类用到,否则会导致message.what冲突...对开源库的选取,一般都需要选择比较稳定的版本,还有作者在维护的项目,比如这里在github搜索image,出现的的图片加载库。...需要使用BuildConfig.DEBUG标记对Log进行封装,只在调试时输出重要信息,正式版不输出 TODO more 参考文章 Android进阶之路——编程规范 Google官方MVP+Dagger2

    1.2K90

    Android开发架构规范前言命名规范编程规范代码提交规范架构规范参考文章

    这里整理一下自己android开发的一些规范。希望对各位有帮助。 ---- 命名规范 命名规范 名全部采用小写 主名采用[公司性质].[公司名称]....继承自组件的类,一般采用类名作为后缀, 例如:class LoginActivity extends Activity{} 自定义异常必须以Exception结尾 全局变量添加所有者前缀:实例成员变量前缀...图片的.9处理 使用静态变量方式实现界面间共享要慎重 单元测试(逻辑测试、界面测试) 不要重用类的handler,对应一个类的handler也不应该让其子类用到,否则会导致message.what冲突...对开源库的选取,一般都需要选择比较稳定的版本,还有作者在维护的项目 ,比如这里在github搜索image,出现的的图片加载库。...需要使用BuildConfig.DEBUG标记对Log进行封装,只在调试时输出重要信息,正式版不输出 TODO more 参考文章 Android进阶之路——编程规范 Google官方MVP+Dagger2

    1.4K80

    金九银十准备换场地?对标腾讯T3的Android高级工程师面试大纲及时雨来了

    面试题 1、ListView是什么 2、ListView的RecycleBin机制 3、ListView的优化 Android项目构建面试题 1、android构建流程 2、jenkins持续集成构建...架构模式面试题 Android基础——框架模式MVC在的实践 http://blog.csdn.net/qq_30379689/article/details/52909656 Android基础...——框架模式MVP在的实践 http://blog.csdn.net/qq_30379689/article/details/52910567 Android基础——框架模式MVVM之DataBinding...要想面试成功进大厂,面试前的准备肯定是要很充分的,除了上面的面试资源分享,我还整理了以下面试复习资源给大家: 最后我在这里分享一下这段时间从朋友,大佬那里收集到的一些2019-2020BAT 面试真题解析...这份资料把大厂面试中常被问到的技术点整理成了 PDF ,知识脉络 + 诸多细节;还有 高级架构技术进阶脑图 帮助大家学习提升进阶,也节省大家在网上搜索资料的时间来学习,也可以分享给身边好友一起学习。

    1.1K72

    Android ListView与RecycleView的对比使用解析

    ListView,就如其名,是用来显示列表的一种View,RecycleView,是其的加强版,今天带来的是这两个几乎具有相同的功能的对比使用 先从ListView说起吧 ListView: 1.在布局文件中使用...ListView,并为其定义一个id,方便我们之后的调用,宽高与控件相同 2.准备数据,将数据添加到ArrayAdapter适配器当中 3.在Activity的java文件中使用findviewbyid...String类型的数组,之后创建ArrayAdapter适配器,注意String,是一个泛型,后面的构造函数里的参数分别为上下文android.R.Layout.simple_list_item 1是系统给的一个...,但是,我们知道第二个参数是提供的一个item布局,这个布局过于简单,我们想要实现一个自定义布局怎么办?...4.准备数据,将数据添加到第三步的适配器类,之后与上面所说的步骤一样,找到Listview的实例,设置适配器 ? 效果 ?

    1.7K10

    React Native学习笔记

    二.React Native 移动平台提供了运行JS代码的引擎,JS可以实现动态配置并表达逻辑信息,二者的结合可以概括React Native所要解决的问题:基于JS,具备动态配置能力的移动端开发框架...,开发者用同一套语法、工具,开发面向、iOS、前端不同平台的应用。...这样既可以有效减小JS Bundle,减少加载JS Bundle的时间,也有利于后续的预加载和缓存。...二.大数据量时Listview加载卡顿 (一)Listview节点复用 分析卡顿原因,可以从Listview的实现原理入手。...除此之外,被滑出视野范围外的节点,只是从列表这个节点上移除,但是节点的引用依然存在,还是会占用内存。 所以,节点没有复用,滑动时会触发多次重绘,导致卡顿。

    1.7K90

    Flutter 视图布局(二)

    YAML 是一个标记性语言,它对大小写敏感,由于不像其他类型文件的数据格式拥有明显的、子标记而是默认使用空格缩进(2个空格)代表层级,比如用“- ”(划线+空格)来表示列表。...当然,在在默认的文件也有示例说明,这就需要你自己去打开文件看一看啦。 在默认的文件情况下我们可以看到一分类由以下类型组成。...addAutomaticKeepAlives 源码部分说明 简单来说(翻译一下),通常列表是懒惰的,将子类元素装在 AutomaticKeepAlive ,以便其子元素可以使用 KeepAliveNotification...addRepaintBoundaries 是否将子项都装在 RepaintBoundary ,默认为 true。...addSemanticIndexes 是否将子项都装在 IndexedSemantics ,默认依然为 true。

    3K10

    React-Native 预加载优化方案

    本文作者:ivweb 朱灵子 React-Native预加载优化方案 本文针对使用React Native开发混合应用的过程端白屏时间较长的问题,提出了react-native端RootView...针对首屏获取时间较长的问题,项目已经采用React-Native前端异步数据缓存优化方案,而且在IOS和端数据返回的平均值均在180ms左右,页面加载的过程界面渲染以及框架初始化的时间占比均只有...综上可知,导致React-Native端白屏时间较长的关键性因素是bundle离线加载与解析的时间较长,因为React-Native端bundle离线加载与解析的过程是在java端完成的,...因此,java执行效率较OC来讲相对较低,端机型总体性能与IOS相比占有相对劣势都是导致React-Native端bundle离线加载与解析的时间较长的原因,也是造成React-Native端白屏时间较长的关键性因素...rootView 首先,在进入当前React-Native activity 的 activity调用ReactPreLoader的init方法,如下图所示: ReactPreLoader.init

    5.7K11

    面试一线互联网公司Android中高级开发工程师必问面试题集锦

    前言 今天我们说说中高级开发工程师岗位在大公司应聘的复习方向: 用人单位对中高级开发工程师方面的要求 已经火了这么多年了。现在如果还从事开发,基本上都是中高级开发工程师。...那么用人单位在对中高级开发工程师方面的要求要达到什么程度呢? 在回答这个问题之前,我先说一下中高级开发工程师的薪资水平吧。至于为什么,先说这个。因为我怕接下来你没有动力去看,去学习,去提高。...贝壳,汽车之家,这些中高级开发工程师的薪资范围是30K-50K,并且有可能达到14薪。...随即转到Map的hashMap的相关原理。 有问listview(recycleview)有哪些方法,然后每一个方法的作用(这里的方法会根据你前面回答的不断的深问),参数的作用。...一、java方面 1.接口的意义(百度) 2.抽象类的意义(乐视) 3.内部类的作用(百度,乐视) 4.类的静态方法能否被子类重写,为什么?

    2.2K40

    开源项目——FLutter开发录音APP

    歌曲列表画面调用两个接口,一个接口获取当前账户录过多少首歌曲,一个接口获取歌曲列表,滑动列表为ListView,请求错误时弹出POP框。点击歌曲进入到录音页面。...android打包,命令:flutter build apk --split-per-abi,默认打包方式就是release,flutter build apk打出来的特别大,因为多种架构模式的都打在一起了...,加上--split-per-abi会把不同架构的分开打,"armeabi-v7a", "arm64-v8a"是比较主流的,也可以单独打开项目中的android文件夹,使用原生的方式进行打包,在app.../build.gradle添加ndk配置,将主流的CPU架构打到一个里,有两个地方需要特别注意,一是打包时signature的V1和V2都需要勾选上,为了适配低版本,二是app/build.gradle...的minSdkVersion决定了兼容的版本,21适配5.0。

    1.7K00

    第九夜 狂风

    我们经常需要在应用包含简易的网页显示功能。我将在这一讲实现网页的显示。 《狂风》,来自小Willem,荷兰画派黄金时代的作品。作为当时海上马车夫的荷兰,对航海题材的画情有独钟。...在这个新的条目页面,点击某个联系人后,能显示该联系人的URL指向的页面。相关的知识点为: Intent和Bundle。传递数据。 WebView。用于显示一个网页。...CATEGORY_ID"是“键”,点击条目对应Category的ID是“值”。 putExtra()方法会先创建一个Bundle对象,再传递这个Bundle对象。...在,一个Bundle对象即一个键值对。键是一个字符串,值是任意可以打包的对象(parcelable object)。Bundle在的用途非常广泛。...练习 参考第八夜 玛丽莲梦露,增加ContactAdapter,activity_category_list.xml和list_contact.xml,以完整的实现联系人条目页面。

    88370

    基础干货(三):数据库的学习

    ---- title: 基础干货(三):数据库的学习 copyright: true categories: 基础干货 date: 2018-01-10 19:35:26 tags: [Android...不用关心字段声明的数据类型是什么。...使用ArrayAdapter为listview填充数据的步骤: 1、在布局文件添加ListView 2、在代码初始化这个listview控件 3、调用listview.setAdapter()填充数据...填充数据的步骤: 1、在布局文件添加ListView 2、在代码初始化这个listview控件 3、调用listview.setAdapter()填充数据 //使用适配器为listview填充数据...界面的显示(重点) 步骤: 1、在布局文件添加ListView 2、在代码初始化这个listview控件 lv = (ListView) findViewById(R.id.lv); 3、自定义数据适配器

    2.7K20

    【翻译】Kotlin 1.1 新版本同样适合开发者

    所有的新特性仍然适用于 Java 6 ,同时作为扩展适用于开发者。更重要的是,今天我就要把这些都展示给您,让您知道在开发程序过程是多么的爽快。...协程 在 Kotlin 1.1 协程是一个令人振奋的新闻。尽管最后发布的依然是带有“实验性”的,不过它已经功能齐全并且从今天开始你也可以开始在你的项目中使用了!...因此,即使我们同样实现的代码看上去大同小异,但很重要的一点就是我们懂得协程归更到底是创建了子线程并在主线程返回得到结果,这在尤为重要。...辛运的是, Kotlin 团队开发极其迅速,已经有好些库把协程的威力带到了开发。...其他一些对于开发者来说很酷的事情 在这个版本还有很多其他的改进,但是我想重点提出几个关于针对开发的功能。

    1.1K60

    6-VI--ListView琐碎小知识点汇总

    1、ListView不显示蓝色阴影: 强迫症的你有没有很讨厌这个阴影,反正我是不喜欢,去除方法: 阴影.png listview.setOverScrollMode(ListView.OVER_SCROLL_NEVER...(0); 3.设置分割线:也可在xml设置,记得设高度 //设置listview的item分割线:能设drawable,就任由发挥了 ListView.setDivider(getResources(...).getDrawable(R.drawable.XXX)); //设置分割线的高度 ListView.setDividerHeight(10); 分割线样式及长度.png 4.注意点: ListView...宽高尽量不用包裹内容,否则由于计算控件高度多次调用getView 5.添加头布局:一定要在设置适配器之前 添加头脚.png ListView.addHeaderView(View); ListView.addFooterView...(false);//去除顶部分割线 本文由张风捷特烈原创,转载请注明 更多技术欢迎访问:https://www.jianshu.com/c/004f3fe34c94 张风捷特烈个人网站,编程笔记请访问

    67440
    领券