から、私は次のソースコードを持っている:フラグメントマネージャで開いているアクティビティ正しく別のアクティビティ
private void initToolbars() {
Toolbar toolbarBottom = (Toolbar) findViewById(R.id.toolbar_bottom);
if (toolbarBottom != null) {
toolbarBottom.setOnMenuItemClickListener(new Toolbar.OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem item) {
switch (item.getItemId()) {
case R.id.takePhoto:
Intent takePhotoIntent = new Intent(NewDocuActivity.this, TakePhotoActivity.class);
startActivity(takePhotoIntent);
}
return true;
}
});
// Inflate a menu to be displayed in the toolbar
toolbarBottom.inflateMenu(R.menu.newdocu_toolbar);
}
}
TakePhotoActivityのOnCreateの方法は、このソースコードを持っています
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_take_photo);
if (null == savedInstanceState) {
getFragmentManager().beginTransaction()
.replace(R.id.container, Camera2BasicFragment.newInstance())
.commit();
}
}
私はアプリを実行する場合エラーが発生しました:
アクティビティを開始できませんでしたComponentInfo {com.example.test/com.example.test.TakePhotoActivity}:java .lang.NullPointerExceptionは:NULLオブジェクト参照
R.id.containerに 'ボイドandroid.view.View.setOnClickListener(android.view.View $ OnClickListener)' 仮想メソッドを呼び出すための試みだけでframeLayoutあります。 TakePhotoActivityをアプリ内でのみ実行すると機能します。
メソッドinitToolBarsからTakePhotoActivityを開く正しい方法は何ですか?
スタックトレース全体を送信します。また、OnClickListenerをどこに割り当てるかを確認します。 –
'setOnClickListener'のどこには表示されません –
私はsetOnClickListenerを持っていませんでした。 TakePhotoActivityの呼び出しは、ツールバーメニューからのみ行われます。 –