gpt4 book ai didi

java - Android 父类(super class)到子类的转换

转载 作者:行者123 更新时间:2023-12-01 11:51:33 25 4
gpt4 key购买 nike

我正在使用 Android Studio 进行 Android 开发。我试过这个

MarginLayoutParams mlp;
LayoutParams lpms = new LayoutParams(5, 5);
mlp = (MarginLayoutParams) lpms; //Throws Class cast exception

但是它会导致ClassCastException。为什么? MarginLayoutParams 是 LayoutParams 的子类。我也尝试使用instanceof,但它返回false。我怎样才能进行类型转换?

更新:我在 GitHub 上的 Cyanogenmod Calculator 应用程序中找到了这段代码:

final View childView = getChildAt(childIndex);
final MarginLayoutParams lp = (MarginLayoutParams) childView.getLayoutParams();

最佳答案

How can I do casting?

你不能。 lpms 的类型不是 MarginLayoutParams 或其任何子类

关于java - Android 父类(super class)到子类的转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28783220/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com