Android 如何通过滚动仅显示微调器中的前3项和其他项?

Android 如何通过滚动仅显示微调器中的前3项和其他项?,android,android-studio,android-spinner,Android,Android Studio,Android Spinner,因此,我有一个旋转器,如图所示 所以我想做的是,我只想显示前3个项目,其余的项目应该可以滚动。有什么想法吗 您可以调整微调器弹出菜单的高度,如下所示: Spinner spinner = (Spinner) findViewById(R.id.spinner); try { Field popup = Spinner.class.getDeclaredField("mPopup"); popup.setAccessible(true);

因此,我有一个旋转器,如图所示


所以我想做的是,我只想显示前3个项目,其余的项目应该可以滚动。有什么想法吗

您可以调整微调器弹出菜单的高度,如下所示:

Spinner spinner = (Spinner) findViewById(R.id.spinner);
    try {
        Field popup = Spinner.class.getDeclaredField("mPopup");
        popup.setAccessible(true);

        // Get private mPopup member variable and try cast to ListPopupWindow
        ListPopupWindow popupWindow = (ListPopupWindow) popup.get(spinner);
        popupWindow.setHeight(500);
    }
    catch (NoClassDefFoundError | ClassCastException | NoSuchFieldException | IllegalAccessException e) {
        // silently fail...
    }

将此属性设置为xml中的微调器:

这应该对你有帮助
android:dropDownHeight="100dp"