내 ActionBar에 새로 고침 버튼을 추가했는데, 사실 내 ActionBar에 항상 새로 고침 버튼이 있습니다. 내가 만들 필요가 있음을 heared 한ActionBar 새로 고침 버튼
다음의 나는 아이콘 추가 여기서
<item android:id="@+id/ofertasRefresh"
android:icon="@drawable/ic_action_refresh"
android:title="Refresh"
android:alphabeticShortcut="r"
android:orderInCategory="1"
android:showAsAction="always" />
그리고 내 활동에 코드의 양을 추가 한을 :
@Override
public boolean onCreateOptionsMenu(Menu menu) {
this.optionsMenu = menu;
MenuInflater inflater = getMenuInflater(); //ERROR<-----------
inflater.inflate(R.menu.main, menu);
return super.onCreateOptionsMenu(menu); // in Fragment cannot be applied <------------
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.airport_menuRefresh:
// Complete with your code
return true;
}
return super.onOptionsItemSelected(item);
}
public void setRefreshActionButtonState(final boolean refreshing) {
if (optionsMenu != null) {
final MenuItem refreshItem = optionsMenu
.findItem(R.id.ofertasRefresh);
if (refreshItem != null) {
if (refreshing) {
refreshItem.setActionView(R.layout.actionbar_indeterminate_progress);
} else {
refreshItem.setActionView(null);
}
}
}
}
에 getMenuInflater()
은 "Cannont가 방법을 해결하고" "단편은 적용 할 수 없다"는 "나타납니다"라고 말합니다 ...
EDITED *
나는 내 문제가 MyActivity.java에 초점을 맞춘 것을 나는 내가 OnCreateOptionsMenu
의 가지고 onOptionsItemSelected
MyActivity.java
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// toggle nav drawer on selecting action bar app icon/title
if (mDrawerToggle.onOptionsItemSelected(item)) {
return true;
}
// Handle action bar actions click
switch (item.getItemId()) {
case R.id.action_settings:
return true;
default:
return super.onOptionsItemSelected(item);
}
}
어떤 생각이 문제를 해결하기 위해 코드를 붙여 생각?
아마도 가져올 때 supportMenuInflater를 사용하고있을 것입니다. 그리고 당신은 슈퍼를 돌려 보내면 안됩니다. – togikan
나는 그것을 대체하고 "getMenuInflater"는 어떨까요? –
어디에서'getMenuInflater'를 호출할까요? 조각에서? –