在自定义视图的构造函数中获取CoordinatorLayout行为

时间:2016-12-30 00:05:37

标签: android android-coordinatorlayout bottom-sheet

我创建了一个自定义视图来处理我的底部工作表实现。我曾尝试使用BottomSheetBehavior.from( this )检索底片行为,但由于我需要构造函数中的行为,this尚未初始化。

目前,我已经使用postDelayed runnable在1ms处理了一个解决方法来获取行为并做我需要的但是这显然是一个黑客攻击。

我一直无法找到任何其他方法来获得这种行为。

[编辑]

在深入了解之后,this未被初始化似乎不是问题。问题是当LayoutParams直接从构造函数调用时,CoordinatorLayout.LayoutParams不是BottomSheetBehavior.from的实例,但是当从构造​​函数中创建的runnable调用时,它们是CoordinatorLayout.LayoutParams

1 个答案:

答案 0 :(得分:0)

在查看View文档之后,我将视图的构造函数中的调用移动到了onAttachedToWindow方法。

我觉得这比使用runnable更清洁。