Ответ 1
используйте Android Support V7 Library,
android.support.v7.widget.PopupMenu
Я разрабатываю приложение Android 2.1 API 7. Я также использую ActionbarSherlock библиотеку для реализации панели действий.
Теперь мне нужно реализовать PopupMenu
, который поддерживает только API 11+.
Как я могу реализовать PopupMenu
в Android 2.1 API 7?
используйте Android Support V7 Library,
android.support.v7.widget.PopupMenu
Я столкнулся с такой проблемой, и единственным решением, которое я нашел для себя, было использование диалога списка в android sdk < 11 и ListPopup в android 11 и выше.
вы можете использовать HoloEveryWhere, при этом тема Holo от android 4.1 до 2.1 и выше.
Его возможный импорт того, что файлы API в вашем коде, я думаю, что eclipse сделает это за вас, просто напишите код и, если он не импортирован, а не google, он импортирует API.
Вы можете создать элемент ListDialogFragment, который расширяет SherlockDialogFragment и создает собственный интерфейс Listener, чтобы вы могли обрабатывать события выбора.
public class ListDialogFragment extends SherlockDialogFragment {
private String[] mValues;
public interface ListDialogListener {
void onFinishListDialog(int selectedIndex, String tag);
}
private ListDialogFragment(String[] values) {
mValues = values;
}
public static ListDialogFragment newInstance(int index, String[] values) {
ListDialogFragment fragment = new ListDialogFragment(values);
// Supply index input as an argument.
Bundle args = new Bundle();
args.putInt("index", index);
fragment.setArguments(args);
return fragment;
}
public int getSelectedIndex() {
return getArguments().getInt("index", 0);
}
}