Android: 类似于原生浏览器的ActionBar

8
我希望我的ActionBar能像原生/默认的Android浏览器一样运作: 它在页面顶部可见,但随着用户向下滚动,该栏会滚出视图,但是如果您将页面向上滚动到顶部,则该栏会再次显示,但会在一段时间后隐藏,当它隐藏时,不会影响底层视图。
我尝试使用定时器实现自动隐藏,但是当ActionBar隐藏时,它会将可滚动视图向上移动,因此整个页面看起来好像整体向上移动,而不是ActionBar悬浮在视图的顶部。
2个回答

5
您正在寻找与“快速返回”模式相结合的操作栏覆盖模式。这是一个功能,当用户向上滚动时,视图再次出现在顶部。请参阅此优秀的博客文章,描述了这种模式。不要错过来自谷歌的Roman Nurik的示例实现
通过在setContentView()之前使用requestWindowFeature(Window.FEATURE_ACTION_BAR_OVERLAY)或将主题属性android:windowActionBarOverlay设置为true来启用覆盖模式。

2

你尝试过在ActionBar上使用覆盖模式吗?可以通过getWindow().requestFeature(Window.FEATURE_ACTION_BAR_OVERLAY)来实现。
然后在主布局中添加一个marginTop。


我应该将marginTop设置为什么值?你的意思是只需在代码中添加这两行(FEATURE_ACTION_BAR_OVERLAY和在xml中设置一些值的marginTop),它就可以像原始浏览器的ActionBar一样工作吗? - user25
我也使用app-combat支持actionbar。 - user25

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接