动态添加的 FloatingActionButton 不采用随 Snackbar 移动的行为
Dynamically added FloatingActionButton does not adopt behavior to move with the Snackbar
我正在尝试将 FloatingActionButton
添加到 Activity
的 onCreate()
中的 CoordinatorLayout
。这基本上是有效的。它接收 Coordinator.LayoutParams
和 gravity = BOTTOM | RIGHT
。当 Snackbar
(附加到同一个协调器)弹出时,它位于按钮下方。
如果我通过 xml 将 FloatingActionButton
嵌入到协调器中,它会像宣传的那样工作。
嵌入式按钮和动态添加的按钮基于相同的 xml 源,分别通过 <include />
(有效)和 addView( inflate( ... ) )
(无效)添加。调试工具中的视图层次结构是相同的。
我在这里注意到的一件奇怪的事情是,在 onCreate()
中,在 inflating/adding 之后,晶圆厂的行为是 null
。在 Snackbar
出现之前,它神奇地收到了一个 FloatingActionButton.Behavior
.
在添加视图时手动设置 FloatingActionButton.Behavior
没有帮助。
如果我能访问设计库的源代码,那将对我理解发生了什么有很大帮助,但它似乎还不可用。
现在在代码中膨胀一个 FloatingActionButton
,当在同一个 CoordinatorLayout
中有一个 Snackbar
时,应该可以正常工作。
我正在尝试将 FloatingActionButton
添加到 Activity
的 onCreate()
中的 CoordinatorLayout
。这基本上是有效的。它接收 Coordinator.LayoutParams
和 gravity = BOTTOM | RIGHT
。当 Snackbar
(附加到同一个协调器)弹出时,它位于按钮下方。
如果我通过 xml 将 FloatingActionButton
嵌入到协调器中,它会像宣传的那样工作。
嵌入式按钮和动态添加的按钮基于相同的 xml 源,分别通过 <include />
(有效)和 addView( inflate( ... ) )
(无效)添加。调试工具中的视图层次结构是相同的。
我在这里注意到的一件奇怪的事情是,在 onCreate()
中,在 inflating/adding 之后,晶圆厂的行为是 null
。在 Snackbar
出现之前,它神奇地收到了一个 FloatingActionButton.Behavior
.
在添加视图时手动设置 FloatingActionButton.Behavior
没有帮助。
如果我能访问设计库的源代码,那将对我理解发生了什么有很大帮助,但它似乎还不可用。
现在在代码中膨胀一个 FloatingActionButton
,当在同一个 CoordinatorLayout
中有一个 Snackbar
时,应该可以正常工作。