gpt4 book ai didi

android - 从 fragment 内部调用 Activity 方法

转载 作者:太空狗 更新时间:2023-10-29 13:37:12 25 4
gpt4 key购买 nike

我正在尝试将一个值从容器 Activity 中传递给 fragment 。

我试着这样做:

我在 Activity 中有这个方法。

public int showMode(){return Mode;} 

fragment 中的这个方法:

public int getModeFromActivity(){
int i;
i = getActivity().showMode;
return i;

但它在 fragment 方法中给我错误:showMode cannot be resolved or is not a field

谁能帮我解决这个问题?谢谢!

最佳答案

你的方法是错误的。

这里有两种方法可以在 Android 中完成这项工作。

1.) 在 fragment 中定义一个整数模式。将 Fragment 的构造函数更改为

FragmentName(int mode){
this.mode = mode;
}

因此您可以在 Activity 中读取模式变量,并可以在创建 Fragment 时将其传递给它。

2.) 另一种方法是使用接口(interface),这样您的 Fragment 就知道其父 Activity 实现了您的方法!所以你必须把 Fragment 改成这样

InterfaceName mInterface;
FragmentName(MyInterfaceName interface){
mInterface = interface;
}

public int getModeFromActivity(){
int i;
i = mInterface.showMode();
return i;
}

关于android - 从 fragment 内部调用 Activity 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9365100/

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