João Melo João Melo - 4 months ago 32
Java Question

Android NumberPicker limits on Gingerbread

I have a numberpicker:

AlertDialog alertDialog = builder.create();
alertDialog.setTitle("Quantidade");
NumberPicker NP = (NumberPicker)view.findViewById(R.id.npicker);
NP.setMaxValue(1000);
NP.setMinValue(1);
alertDialog.setButton(...);
alertDialog.show();


This works fine on Android 4.0.x, but on Android 2.3.x I get

java.lang.NoSuchMethodError: android.widget.NumberPicker.setMaxValue


If I remove
NP.setMaxValue(1000)
and
NP.setMinValue(1)
, it works but the limits are set as 0, is there any way to set the number picker limits on Android 2.3.x?

Answer

As per the documentation, NumberPicker (and all its methods) are available only from API Level 11 (SDK 3.0). So if you want compatibility with 2.3.x, you need to have your own implementation. Luckily there is one already available here

Edit

The Internet has been not so gentle on the link above and it is no longer available. Even the alternatives suggested in the comments are also gone. You are better off writing your own.

Comments