Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

pw 里面是RecyclerView #3

Open
open9527 opened this issue Dec 18, 2017 · 2 comments
Open

pw 里面是RecyclerView #3

open9527 opened this issue Dec 18, 2017 · 2 comments

Comments

@open9527
Copy link

我要怎么动态设置rv的高度.
例如我的rv 会显示很多条目,但是一次最多显示5条,也会有情况数据最多也就小于五条的时候,就需要动态设置当前rv的高度

@PopFisher
Copy link
Owner

如果你的rv的item是那种很规则的或者是固定的几种type,那么你只能去measure那个Item的布局,然后把每个Item的的高度加起来。加入item都是一样的,那就是count * itemHeight。 还有一种方法是,你给ViewTreeObserver添加一个onGlobalLayoutListener,在里面动态调整高度,这个的原理就是等pw显示出来之后看看它当前显示出来的高度height是否在我们允许它显示的那个空间内部,然后动态计算一个值修改掉,这种情况可能发现那个pw会跳动一下(修改值的时候如果用动画控制效果会更好,就不会觉得跳动了),不过应该问题不大。

@Alex-Cin
Copy link

我的计算方法,和楼主的差不多的,就是popwindow 的高度(这个高度,一定是能算出来的),大于其要展示的区域,就调用setHeight就可以了。别忘了考虑状态栏的高度,就可以了。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants