Proszę o pomoc, Zrobiłem menu niestandardowe biblioteki (Dodano wsparcie) (OR-> main_activity_actions.xml)Android Action Bar trzy kropki nie są wyświetlane
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:yourapp="http://schemas.android.com/apk/res-auto" >
<item
android:id="@id/search"
android:icon="@drawable/search"
android:title="@string/search"
yourapp:showAsAction="ifRoom" />
<item
android:id="@id/view_all"
android:title="@string/view_all"
yourapp:showAsAction="never"/>
<item
android:id="@+id/action_settings"
yourapp:showAsAction="never"
android:title="@string/action_settings"/>
Teraz co należy zrobić, aby umieścić action_settings w trzy kropki (paska akcji), zamiast menu sprzętowego (bez hackowania).
główną działalność
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main_activity_actions, menu);
return true;
}
dobrze znalazłem hack ale czy jest jakiś inny sposób, pozwól mi znać,
Hack
umieścić ten kod w onCreate
try {
ViewConfiguration config = ViewConfiguration.get(this);
Field menuKeyField = ViewConfiguration.class.getDeclaredField("sHasPermanentMenuKey");
if(menuKeyField != null) {
menuKeyField.setAccessible(true);
menuKeyField.setBoolean(config, false);
}
} catch (Exception ex) {
// Ignore
}
dla to musisz zaimportować
import java.lang.reflect.Field;
import android.view.ViewConfiguration;
jeśli chcesz acheive tę siłę w pełni niż można użyć dostawcy działania – Hardik
Nie trzeba dodawać «dziękuję» na pytanie; zaznaczenie odpowiedzi jako zaakceptowanej jest wszystkim, czego potrzebujemy. :-) –