저는 여러 가지 활동을 포함하는 앱을 쓰고 있습니다. 각 앱은 더 많은 조각으로 구성되어 있습니다. 거의 각 조각에서 다른 도구 모음을 설정하고 싶습니다 ... 어디에서해야합니까? 나는 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>
<!--- [...] --->
답변 해 주셔서 감사합니다. 각 조각에 대한 특별한 변경조차도 상대적인 조각의'onCreate()'에 더 잘 들어갈 것인가? 링크 된 샘플 프로젝트에서 도구 모음의 변경 사항은 조각으로 표시되지 않고 작업에서만 나타납니다. – Robb1
글쎄, 툴바는 레이아웃의 또 다른보기이며, 또 다른보기로 사용자 정의 된 Alog가 있어야합니다. –