1

invalidateOptionsMenu()으로 전화하면 무슨 일이 발생하는지 알고 싶어합니다. 전체 작업 표시 줄을 다시 그려 넣거나 onPrepareOptionsMenu() 다음에 오는 onCreateOptionsMenu()으로 전화를 걸 수 있습니까? 안드로이드 소스 코드에 따라 옵션 메뉴가 변경되었다는 것을 선언하므로 재 작성해야합니다. onCreateOptionsMenu(android.view.Menu) 메서드는 다음에 표시해야 할 때 호출됩니다. 명확한 설명이 필요한 특정 점이 있습니다.Android에서 invalidateOptionsMenu()가 호출되면 어떻게됩니까?

  • 어떤 방식 으로든 ActionBar 탭에 영향을 줍니까?
  • 활동 레이아웃 내부의 뷰 페이지에 영향을 줍니까?
  • 작업 표시 줄 탭과 관련된 조각에 영향을 줍니까?

답변

4

옵션 메뉴가 변경되었으므로 다시 작성해야한다고 선언합니다. 다음에 이 표시 될 때 onCreateOptionsMenu (Menu) 메서드가 호출됩니다.

어떤 방식 으로든 ActionBar 탭에 영향을 줍니까?

다시 그릴 것입니다.

활동 레이아웃의 뷰 페이지에 영향을 줍니까?

아니요.

작업 표시 줄 탭과 관련된 조각에 영향을 줍니까?

그것은하지

+0

안녕 @Smittey을 수행하면 InvalidateOptionMenu()가 ActioBar 탭을 만들 것이라고 말했다. 나는 그것이 정말로 일어나고 있는지 그리고 내가 어떻게 이런 일이 일어나지 않을 수 있는지를 알기 위해 수행하는 코드 조각을 알고 싶어한다. 이 호출로 인해 탭과 관련된 조각이 S3에서 파손되기 때문입니다. –

+0

업데이트 : 비 UI 스레드에서 무효 옵션 메뉴를 호출하는 사라지는 조각 이유를 확인했습니다. –

관련 문제