0

저는 여러 가지 활동을 포함하는 앱을 쓰고 있습니다. 각 앱은 더 많은 조각으로 구성되어 있습니다. 거의 각 조각에서 다른 도구 모음을 설정하고 싶습니다 ... 어디에서해야합니까? 나는 onCreate() 또는 onCreateView() 안에있는 거의 모든 것을 했었지만 지금은 스스로에게 묻습니다. onStart()에 넣는 것이 더 정확할까요? 활동 및 조각 수명주기가 작동하는 방식을 알고 있지만 ... 특정 사례에 대한 답변을 찾지 못했습니다. 여기에 내가 조각 중 하나에서 사용되는 코드는 다음과 같습니다조각에서 도구 모음을 설정할 위치는 어디입니까? onCreate() 또는 onStart()?

// Toolbar setup 
setHasOptionsMenu(true); 
AppCompatActivity activity = (AppCompatActivity) getActivity(); 
ActionBar actionBar = activity.getSupportActionBar(); 
if (actionBar != null) 
    actionBar.setDisplayHomeAsUpEnabled(true); 
    Toolbar tb = (Toolbar) activity.findViewById(R.id.toolbar_main); 
    tb.setNavigationOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View view) { 
      FragmentManager mng = getFragmentManager(); 
      mng.popBackStack(); 
     } 
    }); 
if (activity.getSupportActionBar() != null) 
    activity.getSupportActionBar().setTitle(R.string.toolbar_title); 
    tb.setVisibility(View.VISIBLE); 

여기 R.id.toolbar_main가 정의 된 activity_main.xml 파일의 일부이다 :

<!--- [...] ---> 
<android.support.design.widget.AppBarLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:theme="@style/AppTheme.AppBarOverlay"> 
     <android.support.v7.widget.Toolbar 
      android:id="@+id/toolbar_main" 
      android:layout_width="match_parent" 
      android:layout_height="?attr/actionBarSize" 
      android:background="?attr/colorPrimary" 
      app:popupTheme="@style/AppTheme.PopupOverlay" /> 
</android.support.design.widget.AppBarLayout> 
<!--- [...] ---> 

답변

0

.onCreate에서 할() 메소드 - 재 설계를위한 구글의 샘플 프로젝트 참조 : https://github.com/chrisbanes/cheesesquare

+1

답변 해 주셔서 감사합니다. 각 조각에 대한 특별한 변경조차도 상대적인 조각의'onCreate()'에 더 잘 들어갈 것인가? 링크 된 샘플 프로젝트에서 도구 모음의 변경 사항은 조각으로 표시되지 않고 작업에서만 나타납니다. – Robb1

+0

글쎄, 툴바는 레이아웃의 또 다른보기이며, 또 다른보기로 사용자 정의 된 Alog가 있어야합니다. –

0

그럼 난 당신 활동 클래스에서 도구 모음을 넣어 제안합니다. 필요에 따라 사용자 정의 도구 모음을 만들 수 있습니다. 프래그먼트를 호출하는 동안 메소드를 호출하여 액티비티 또는 프래그먼트에서 변경 사항 (색상, 테마 등)을 만들 수 있습니다.

+1

제 질문은 주로 onCreate() 및 onStart() 메소드에 관한 것입니다! 당신이 이야기하는 조각에 그 변화를 어디에 둘 것인가? 실질적인 차이가 있습니까? – Robb1

1

이 당신의 조각에서 활동 도구 모음 및 색상의 변화, 제목 등을 포함합니다.

관련 문제