Se produce una excepción de punto nulo al intentar encontrar ViewById
Tengo la siguiente actividad:
public class MainActivity extends ActionBarActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
if (savedInstanceState == null) {
getSupportFragmentManager().beginTransaction()
.add(R.id.container, new StartFragment())
.commit();
}
Button login = (Button) findViewById(R.id.loginButton);
login.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
Intent intent = new Intent(MainActivity.this,LoginActivity.class);
startActivity(intent);
}
});
}
Recibo un NPE cuando intento invocarfindViewByID
paraR.id.loginButton
y supongo que esto es porqueloginButton
está dentro de un Fragmento separado, que tengo como:
public static class StartFragment extends Fragment {
public StartFragment() {
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_main, container, false);
}
}
Sin embargo, no estoy seguro de cómo solucionar esto para poder encontrar la ID de loginButton. No he trabajado con fragmentos antes, así que me doy cuenta de que puedo estar usándolos / implementándolos incorrectamente.fragment_main
contiene algunos botones en unLinearLayout
yactivity_main
no tiene nada más que unoFrameLayout
.