조각에서 일부 버튼을 사용하고 있습니다. 해당 버튼을 확인하면 옵션 메뉴가 표시됩니다. 그리고 선택을 취소하면 옵션 메뉴를 숨겨야합니다. 어떻게 내가이버튼을 클릭 할 때 옵션 메뉴 숨기기/표시
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setHasOptionsMenu(true);
mLocation = getArguments().getString(Beco.EXTRA_LOCATION);
listMalls = temporaryModelCache.getDealData().getFacets().getArea();
listCategories = temporaryModelCache.getDealData().getFacets().getCategories();
listGender = temporaryModelCache.getDealData().getFacets().getAgeGroup();
try {
MainActivity activity = (MainActivity) getActivity();
if (activity != null) activity.hideBottomBar();
} catch (Exception ignored) {
}
}
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
menu.clear();
inflater.inflate(R.menu.forgot_password, menu);
mResetButton = menu.findItem(R.id.action_reset);
super.onCreateOptionsMenu(menu, inflater);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
int itemId = item.getItemId();
switch (itemId) {
case R.id.action_reset:
Log.d(TAG, "onClick");
resetFilter();
return true;
}
return super.onOptionsItemSelected(item);
}
할 그리고 if (!mapMall.isEmpty() || !mapGender.isEmpty() || !mapCategory.isEmpty())
내가 작업 메뉴를 표시해야하는 경우이 내가 숨길해야하는 경우/디스플레이 옵션 메뉴
private void checkSelected() {
if (!mapMall.isEmpty() || !mapGender.isEmpty() || !mapCategory.isEmpty()) {
footerTab.setVisibility(View.VISIBLE);
} else {
footerTab.setVisibility(View.GONE);
}
}
하고 else
부분에 난 숨길 필요합니다 옵션 메뉴! 내가 어떻게 이걸 얻을 수 있니? 당신은 옵션 메뉴를 무효화하는 데 사용할 나중에 Menu
객체의 인스턴스를 유지하고 있습니다
Boolean Isreset= false;
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
menu.clear();
inflater.inflate(R.menu.forgot_password, menu);
mResetButton = menu.findItem(R.id.action_reset);
if(!Isreset)
{
mResetButton.setVisibility(true);
}else{
mResetButton.setVisibility(false);
}
super.onCreateOptionsMenu(menu, inflater);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
int itemId = item.getItemId();
switch (itemId) {
case R.id.action_reset:
Log.d(TAG, "onClick");
resetFilter();
Isreset= true;
invalidateOptionsMenu();
return true;
}
return super.onOptionsItemSelected(item);
}
mResetButton.setVisibility (true)의 'setVisibility (boolean)'메서드를 해결할 수 없습니다. – vm345
그것은 나를 위해 작동 – vm345
내가 부울 Isreset = 거짓; true로 설정하고 menu.findItem (R.id.action_reset) .setVisibility (true); 및 menu.findItem (R.id.action_reset) .setVisibility (false); – vm345