Android空指针片段组件

时间:2014-07-02 12:18:38

标签: android android-layout android-fragments

我是android developpement的新手,我正在尝试使用我的片段组件(Edittext,button,...),但我得到了一个nullpointer异常。

这是我的onCreate方法代码:

protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);


setContentView(R.layout.activity_main_menu);

        idCpt = (EditText) findViewById(R.id.idCapteurEditText);
        capBtn = (Button) findViewById(R.id.CapteurBtn);
        final AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(this);

        idCpt.setText("exemple");

        if (savedInstanceState == null) {
            getSupportFragmentManager().beginTransaction()
                    .add(R.id.container, new PlaceholderFragment()).commit();
        }
    }
请问有什么想法吗?

1 个答案:

答案 0 :(得分:0)

您正在使用fragment_main_menu.xml中的观看次数,因为在您的活动中使用activity_main_menu

,您将获得空

因此,在idCpt布局中使用capBtnactivity_main_menu,或在片段的onCreateView中使用视图

View v = inflater.inflate(R.layout.fragment_main_menu, container, false);

然后使用视图查找EditText和按钮

 idCpt = (EditText) v.findViewById(R.id.idCapteurEditText);
 capBtn = (Button) v.findViewById(R.id.CapteurBtn);

即。

@Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
          View v = inflater.inflate(R.layout.fragment_main, container, false);
           EditText idCpt = (EditText) v.findViewById(R.id.idCapteurEditText);
           Button capBtn = (Button) v.findViewById(R.id.CapteurBtn);
          return v;
    }