작업 표시 줄 및 작업 표시 줄에 메뉴가 있습니다.하드 메뉴 버튼을 터치하면 Android getActionBar()가 null을 반환합니다.
하드 메뉴 버튼을 터치하면 getActionBar()
이 null을 반환합니다. 나뿐만 충돌 응용 프로그램을 방지 할 수 있습니다
: 하단에
셋째 열심히 메뉴 버튼을 의미하는 것입니다 if(getActionBar() != null) { // ... }
을하지만 내가하고 싶은 게 아니에요. 수정 (추가/제거)하려면 작업 표시 줄 항목이 필요합니다. 따라서 getActionBar()
이 null을 반환하는 동안 나는 할 수 없습니다.
누군가 getActionBar()
이 null을 반환하는 이유는 무엇입니까? 새로 고침 내가 (액션 뷰가 새로 고침 보여주기 위해 클릭 한 후 바로 XML로 설정 액션보기를 제거 완료 후, 내 활동에
@Override
public boolean onCreateOptionsMenu(Menu menu) {
if (getActionBar() != null) { // Action bar is null here when I click hard menu button.
getActionBar().setDisplayHomeAsUpEnabled(true);
}
// Some logical operations here.
// Get the menu.
BaseActivity.menuOnActionBar = menu;
return super.onCreateOptionsMenu(menu);
}
:
는 UPDATE : 여기
내 코드입니다 진행 표시 줄) : BaseActivity
에
menuOnActionBar.findItem(R.id.menu_refresh).setActionView(null); // This throws an error.
그리고 menuOnActionBar
변수 정의 :
public static Menu menuOnActionBar;
슬로우 오류는 다음과 같습니다 E/AndroidRuntime(4193): java.lang.NullPointerException
getSupportActionBar()
를 호출 할 "바닥에서 세 번째가 열심히 메뉴 버튼을 의미하는 것입니다"- 아이콘에 따라, 즉, 최근 통화 버튼이 아닌 MENU 버튼입니다. – CommonsWare@CommonsWare true이지만, HTC가 메뉴 버튼처럼 동작하도록 변경할 수 있다고 생각합니다 (오래된 앱의 경우 화면에 거대한 메뉴 버튼이 있다는 사용자의 불만 때문에). –
@JustWork 몇 가지 코드를 보여 주시겠습니까? 그것은 당신이 무엇을 원하는지 확실하지 않다 ... –