getView().getLayoutParams().width = ''
getView().getLayoutParams().width = ''
有几个可能的原因导致您无法通过getView().getLayoutParams().width
设置DialogFragment
的宽度:
getView()
返回的视图可能为null
:如果您尝试在DialogFragment
的onCreateView()
方法之前或之外的时间获取视图,则可能会返回null
,因此您无法设置视图的参数。确保在onCreateView()
中使用正确的视图。LayoutParams
可能不是正确的类型:getView().getLayoutParams()
方法返回一个ViewGroup.LayoutParams
对象,这是ViewGroup
的一种通用布局参数类型。然而,具体的布局容器可能使用不同的子类LayoutParams
(例如LinearLayout.LayoutParams
或FrameLayout.LayoutParams
),因此需要使用适当的类型来设置参数。如果您尝试使用错误的参数类型,则可能无法设置宽度和高度。LayoutParams
之前没有为视图设置布局参数,则可能会出现问题。您需要使用getView().setLayoutParams()
方法为视图设置参数,然后才能使用getView().getLayoutParams()
方法获取它们。总之,确保在正确的时间和正确的方式下获取和设置视图参数,并使用正确的参数类型和值,以确保成功设置DialogFragment的宽度和高度。
4 回答1.1k 阅读✓ 已解决
4 回答1.1k 阅读✓ 已解决
1 回答2.5k 阅读✓ 已解决
3 回答839 阅读✓ 已解决
2 回答2.1k 阅读
2 回答959 阅读✓ 已解决
2 回答691 阅读✓ 已解决
使用这种方式设置