更好的方法是将OnClickListener实现到您的片段类,并覆盖片段中的onCreateView,您可以将侦听器分配给按钮.
通过在XML布局中放置onClick属性,您在加载时的活动将查找活动中的元素,而不是片段中的元素.这将抛出异常.
我建议阅读一些片段活动层次结构,以了解何时可以访问片段中的元素.
public class StartFragment extends Fragment implements OnClickListener{
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.fragment_start, container, false);
Button b = (Button) v.findViewById(R.id.save_keywords);
b.setOnClickListener(this);
return v;
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.save_keywords:
...
break;
}
}
}
参考来自:here