2017-06-28 14 views
-1

これは多くの受け入れられた回答の共通の問題のようですが、どれも私のために働いていないようです。フラグメント内のツールバーが起動時にアプリケーションをクラッシュする

ほとんどの答えはフラグメントにツールバーを追加するためのコードのこの部分を使用することをお勧め:

mToolbar = (Toolbar)rootView.findViewById(R.id.toolbar); 
    if (mToolbar != null) { 
     ((AppCompatActivity) getActivity()).setSupportActionBar(mToolbar); 
    } 

残念ながら、これはまだ私はAppCompatActivityを使用していていても私のアプリがクラッシュします。私のエラーは、私のFragmentクラスがFragmentを拡張し、AppCompatActivityを拡張していないという事実にあるかもしれないと思うが、まだこれを確かめるためにはアンドロイドについては十分に分かっていない。 setSupportActionBar行でクラッシュします。

マイ断片コード:

package erikligai.ribbitapplication; 

import android.os.Bundle; 
import android.support.annotation.Nullable; 
import android.support.v4.app.Fragment; 
import android.support.v4.app.FragmentActivity; 
import android.support.v7.app.AppCompatActivity; 
import android.support.v7.widget.Toolbar; 
import android.view.LayoutInflater; 
import android.view.View; 
import android.view.ViewGroup; 
import android.widget.TextView; 

/** 
* Created by erik on 2017-06-07. 
*/ 

public class MessageFragment extends Fragment { 

    Toolbar mToolbar; 

    @Nullable 
    @Override 
    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { 
//  return inflater.inflate(R.layout.message_fragment_layout, container, false); 
     View rootView = inflater.inflate(R.layout.message_fragment_layout, container, false); 

     mToolbar = (Toolbar)rootView.findViewById(R.id.toolbar); 
     if (mToolbar != null) { 
      ((AppCompatActivity) getActivity()).setSupportActionBar(mToolbar); 
     } 

     return rootView; 
    } 

は、任意の提案をお願い申し上げます。

+0

から、私はあなたがNullPointerExceptionが持っていることを前提とし、Activityから取得AppCompatActivity

((AppCompatActivity) getActivity()).getSupportActionBar().setTitle(); 

ToolbargetActivity()からあなたの活動をキャストする必要があります。 なぜツールバーをフラグメントビューから挿入しようとしていますか? – fbwnd

+0

あなたのlogcatを投稿してください。 – SripadRaj

+0

また、ツールバーのインフレーションをフラグメントにではなく、アクティビティに委譲します。 –

答えて

1

あなたはないFragment

mToolbar = (Toolbar)rootView.findViewById(R.id.toolbar); 
関連する問題