chi*_*k10 2 java android android-intent android-layout
我在xml布局文件中声明了许多按钮,并将此布局用于片段.
button android:id="@+id/button1" android:onClick="onClickButton"/> button android:id="@+id/button2" android:onClick="onClickButton"/> .... button android:id="@+id/buttonN" android:onClick="onClickButton"/>
令人失望的是,"onClickButton"事件是在主机活动中捕获的,而不是在我的片段中.当然,在我的片段中,我可以手动解决此问题,如下所示:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_content, container, false);
Button button1 = (Button) view.findViewById(R.id.button1);
button1.setOnClickListener(...);
... etc
Button buttonN = (Button) view.findViewById(R.id.buttonN);
buttonN.setOnClickListener(...);
是否有任何明确的方法来处理Fragment中的onClickbutton事件?
您提到的方法是这样做的标准方法:
Button buttonN = (Button) view.findViewById(R.id.buttonN);
buttonN.setOnClickListener(...);
Run Code Online (Sandbox Code Playgroud)
只需让你的Fragment实现OnClickListener,然后你就可以设置它来监听所有按钮
Button buttonN = (Button) view.findViewById(R.id.buttonN);
buttonN.setOnClickListener(this);
Run Code Online (Sandbox Code Playgroud)