我在一个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”事件被捕捉在主机activity,而不是在我的片段。当然,在我的片段中,我可以手动解决这个问题,如下所示:
@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(...);
有没有显式的方法来处理片段中的onClickbutton事件?
不幸的是,在使用Android SDK时,在代码中这样做是唯一的方法。
你试过定制的东西吗?AndroidAnnotations或RoboGuice使它不那么冗长。