gpt4 book ai didi

java - Android,获取 DecorView 子项

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:20:06 27 4
gpt4 key购买 nike

我想知道是否有可能得到一个 decorViews child 。例如,如果我有一个 decorView 对象并且我知道 decorView 的子对象是一个 FrameLayout,我是否可以通过使用其父对象来获取 FrameLayout 对象?

显然我可以用传统方式使用getViewById(),但如果我只想使用父对象,是否可以获取FrameLayout对象?

谢谢,

最佳答案

你是在谈论对象继承吗?

如果是这样的话,那就很简单了:转换它。

假设您有一个类“Foo”,它是“Bar”的一个祖先类(换句话说:Bar 是 Foo 的一个“ child ”),然后举这个例子:

Foo myFoo = getSomeFoo();
Bar myBar = (Bar)myFoo;

因此,根据您的问题进行调整:

View myView = getDecorView();
FrameLayout myFrameLayout = (FrameLayout) myView;

或:

FrameLayout myFrameLayout = (FrameLayout) getDecorView();

您应该保护进行此调用的 block ,因为如果 getDecorView 返回的实例不是 ,这将抛出 ClassCastException >FrameLayout(或它的(直接)子类)。只需添加一个 try/catch block ,或向包含此行的方法添加一个 throwing 声明。最适合您的。

关于java - Android,获取 DecorView 子项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1613403/

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