Java 从活动中获取片段中的按钮
我该怎么做?或者甚至可以从Java 从活动中获取片段中的按钮,java,android,button,android-activity,fragment,Java,Android,Button,Android Activity,Fragment,我该怎么做?或者甚至可以从活动中获取片段中的按钮 我尝试了很多方法,例如试图获取片段的视图或容器,但没有成功 我这样做是因为我在一个活动中有27个片段,它们都有一个相同的按钮。我不想在每个片段上都做一个按钮侦听器,我想大大减少代码,而只是在我的活动中做一个循环,遍历每个片段,并在那里设置按钮,以便在按下按钮时激活按钮侦听器(在活动中) 一旦我知道如何获得一个按钮,并将其设置为按钮侦听器,我就可以轻松地自己完成循环 我刚完成计算机科学的第一年,已经用java编写代码好几年了 提前谢谢 不要循环或获
活动
中获取片段
中的按钮
我尝试了很多方法,例如试图获取片段的视图或容器,但没有成功
我这样做是因为我在一个活动中有27个片段
,它们都有一个相同的按钮
。我不想在每个片段上都做一个按钮侦听器,我想大大减少代码,而只是在我的活动中做一个循环,遍历每个片段,并在那里设置按钮,以便在按下按钮时激活按钮侦听器(在活动中)
一旦我知道如何获得一个按钮
,并将其设置为按钮侦听器
,我就可以轻松地自己完成循环
我刚完成计算机科学的第一年,已经用java编写代码好几年了
提前谢谢 不要循环或获取对按钮的引用
只需让您的活动实现OnClickListener,并将其设置为所有片段中按钮的单击侦听器。。
在片段中
yourBtn.setOnClickListener(((YourActivityType) getActivity()));
另一个没有implements关键字的解决方案
是在您的活动中有一个公共方法,例如,setButtoAction(按钮btn)
并在活动中将myClickListener声明为变量
同样的想法,没有活动来实现clickLitener…没有工具还有其他方法可以实现吗?我做了一点修改:((GameActivity)getActivity()).setButtonAction(view.findViewById(R.id.button1));在片段和我做的活动中:public void setButtonAction(视图){Button btn=(Button)视图;btn.setOnClickListener(onButtonClick);}在将按钮传递给setButtonAction时,您已经查找了按钮,不必在方法内部再次使用findViewById
public void setButtonAction(Button btn) {
btn.setOnClickListener(myClickListener);
}