gpt4 book ai didi

android - 如何将点击事件从 fragment 传递到容器 Activity ?

转载 作者:行者123 更新时间:2023-12-05 00:12:46 24 4
gpt4 key购买 nike

我正在实现一个抽屉导航 Activity ,其中我在抽屉导航中有一个 fragment (由回收器 View 组成)以动态地将项目添加到抽屉导航。

我已经成功地实现了这个概念,但是我面临一个小问题,即当我点击 fragment 中的任何项目时,抽屉导航没有关闭。这是因为我无法从 fragment 访问 DrawerLayout。

那么我如何将点击监听器从我的 fragment 传递到 Activity 以关闭抽屉布局。

谢谢。

最佳答案

这是一个简单的解决方案。创建接口(interface)

public interface ClickInterface {
public void buttonClicked();
}

然后在你的activity中,实现这个接口(interface)

public class MainActivity extends Activity implements ClickInterface{

@override
public void buttonClicked() {
//do your code here
}
onCreate() {
fragment.setInterface(this);
}

现在从 fragment 类调用这个方法buttonclicked

public class ChildFragment extends Fragment {
ClickInterface interface;


//call this method from activity when activity loads the fragment inside it
public void setInterface(ClickInterface interface) {
this.interface = interface;
}

public void onClick(View v) {
interface.buttonClicked();
}
}

关于android - 如何将点击事件从 fragment 传递到容器 Activity ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44573104/

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