本帖最后由 u011043066 于 2014-05-06 18:27:51 编辑

解决方案 »

  1.   

    自动生成的代码里面已经有了添加Fragment的代码,你自己又写了一遍。
    而且你自己inflate的View还没有add到界面,也就是说都白写了,你看到的Button应该是Fragment的Button,而不是你自己inflate的Button,所以点了没效果
      

  2.   

    我inflate的其实就是fragment_main,虽然setContentView(R.layout.activity_main);但是fragment_main也是被显示啊,有什么方法吗?
      

  3.   

    setContentView(R.layout.fragment_main);Button btn=(Button)findViewById(R.id.Button1);
             btn.setOnClickListener(new OnClickListener() {
         
        @Override
        public void onClick(View v) {
         Toast.makeText(MainActivity.this, "按钮点击事件已触发!", Toast.LENGTH_SHORT).show();
          
       }这样试试..
      

  4.   

    直接在onCreateView()写会有一些其它的问题,之前很多代码都是写在这里面的,后来出现了很多问题,所以就写在上面了,以前的版本能直接写的到了onCreateView()有时候需要变动一下,由于我是先手这样很不方便。比如以上代码想放到onCreateView()里,得写成:
                Button btn=(Button)rootView.findViewById(R.id.Button1);
                btn.setOnClickListener(new View.OnClickListener() {
         @Override
         public void onClick(View v) {
        
         Toast.makeText(getActivity(), "按钮点击事件已触发!", Toast.LENGTH_SHORT).show();
        
         }
         });
    才可以。当然可以有其它办法,难道写在onCreate()里面就没解决办法了吗?这么写到底问题出在哪,我很纠结这个,我担心是不是还有重要的知识点没学到,请各位指教啊。