ツールバーとナビゲーションドロワーを新しいレイアウトファイルに表示する際に問題が発生します。新しいタブ付きレイアウトビューを除いて、アプリ全体で機能しています。ツールバー/ナビドロワーがタブ付き表示で機能しない
私は、新しいJavaクラスののonCreateでそれをアクティブにしようない:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.workout_days);
mToolBar = activateToolbar();
setUpNavigationDrawer();
私はもはやエラーを取得しますが、ツールバーがまだ表示されません。私はそれが私のレイアウトファイルに何か問題があるのだろうかと思っています。
baseactivity:ここ
public static final int HOME = 1;
public static final int MY_WORKOUT = 2;
public static final int MAXES = 3;
public static final int PROGRESS = 4;
public static final int WORKOUTS = 5;
public static final int HELP = 6;
private Class mNextActivity;
public static String mTitle = AppConstant.SHIEKO_WORKOUT;
public static int mType = HOME;
protected Toolbar mToolBar;
private NavigationDrawerFragment mDrawerFragment;
protected Toolbar activateToolbar() {
if(mToolBar == null) {
mToolBar = (Toolbar) findViewById(R.id.app_bar);
setSupportActionBar(mToolBar);
switch (mType) {
case HOME:
getSupportActionBar().setTitle(AppConstant.SHIEKO_WORKOUT);
break;
case MY_WORKOUT:
getSupportActionBar().setTitle(AppConstant.MY_WORKOUT);
break;
case MAXES:
getSupportActionBar().setTitle(AppConstant.SET_MY_MAXES);
break;
case PROGRESS:
getSupportActionBar().setTitle(AppConstant.MY_PROGRESS);
break;
case WORKOUTS:
getSupportActionBar().setTitle(AppConstant.WORKOUTS);
break;
case HELP:
getSupportActionBar().setTitle(AppConstant.FEEDBACK);
}
}
return mToolBar;
}
が私の活動である:それは彼らが下にある私の理解だと私はまた、3つのタブのためのものである3つの他のフラグメントのXMLページを持って、それらは、ツールバーやナビゲーションバーが含まれていません。 tabview ..私は間違っているなら、私にしてください修正..
<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<!--<RelativeLayout-->
<!--android:layout_width="match_parent"-->
<!--android:layout_height="match_parent">-->
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="0dp">
<include android:id="@+id/app_bar"
layout="@layout/toolbar" />
<android.support.design.widget.TabLayout
android:id="@+id/tabs"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
</android.support.design.widget.AppBarLayout>
<android.support.v4.view.ViewPager
android:id="@+id/container"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior"/>
<!--</RelativeLayout>-->
<fragment
android:name="com.bestworkouts.sheikoworkout.NavigationDrawerFragment"
android:id="@+id/fragment_navigation_drawer"
tools:layout="@layout/fragment_navigation_drawer"
android:layout_width="280dp"
android:layout_height="match_parent"
android:layout_gravity="start"
app:layout="@layout/fragment_navigation_drawer" />
</android.support.v4.widget.DrawerLayout>
ありがとうございます!あなたのレイアウトは、このようにする必要があり
'findViewById(R.id.app_bar)'がnullを返しました。あなたのXMLレイアウトに存在することを確認してください –
それはそこにありましたが、別の場所に移動しました。今ではエラーが出ませんし、タブビューはツールバーの下にありますが、それでもまだ表示されません:( – LBJ33
[mcve]で[編集]できますか?コードのスニペットが相互作用する –