片段1:
public class fragment1 extends Fragment implements View.OnClickListener {
ImageButton but, but1, but2;
ImageView view;
@Override << this one
public View OnCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View myView = inflater.inflate(R.layout.fragment1, null);
but = (ImageButton) myView.findViewById(R.id.imageButton11);
but.setOnClickListener(this);
but1 = (ImageButton) myView.findViewById(R.id.imageButton1);
but1.setOnClickListener(this);
but2 = (ImageButton) myView.findViewById(R.id.imageButton2);
but2.setOnClickListener(this);
return myView;
}
@Override
public void onClick(View v) {
main xxx = (main)getActivity();
switch (v.getId()) {
case R.id.imageButton11:
xxx.str="but1";
break;
..
}}
主:
Fragment frag1 = new fragment1();
fr1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
fTrans = getFragmentManager().beginTransaction();
fTrans.replace(R.id.frameLayout2, frag1);
fTrans.addToBackStack(null);
fTrans.commit();
}
});
方法不会覆盖fragment1中超类的方法(第一次覆盖) 但没有&#34;实现View.OnClickListener&#34;它的工作原理
答案 0 :(得分:20)
拼写错误。将方法命名为onCreateView
,而不是OnCreateView
。
答案 1 :(得分:0)
我不熟悉android sdk,但我觉得你需要这样的东西
Fragment frag1 = new fragment1(){
@Override
public void onClick(View view) {
fTrans = getFragmentManager().beginTransaction();
fTrans.replace(R.id.frameLayout2, frag1);
fTrans.addToBackStack(null);
fTrans.commit();
}
};
答案 2 :(得分:0)
返回您的虚增视图
public View onCreateView(.....) {
...
...
return InputFragmentView;
}
并将OnCreateView更改为onCreateView。 你可以点击ctrl + o来准备它^^
答案 3 :(得分:0)
就我而言,我不是从Fragment扩展它。确保您从Fragment
类扩展了片段。
public class fragment1 extends Fragment implements View.OnClickListener {
@Override
/// public View onCreateView.......
}