AlertDialog с NumberPicker отображается неправильно

У меня проблема с «рендерингом» с моим NumberPicker внутри AlertDialog.
Я покажу вам код:

//setup del dialog AlertDialog.Builder builder = new AlertDialog.Builder(activity); builder.setCancelable(false); final NumberPicker picker = new NumberPicker(activity); picker.setMinValue(0); picker.setMaxValue(5); //set bottoni dialog builder.setPositiveButton(R.string.dialog_btn_seleziona, seleziona); builder.setNegativeButton(R.string.dialog_btn_annulla, null); //visualizzo il dialog Dialog dialog = builder.create(); dialog.show(); 

Проблема заключается в том, что вместо того, чтобы иметь такой результат:
Введите описание изображения здесь

У меня есть такой результат:
Введите описание изображения здесь
Селектор синей линии слишком длинный, мне нужна бы такая же длина первого изображения
Я основал эту тему:
NumberPicker отображается неправильно в диалоге
Которые объясняют, как исправить эту проблему, и решение:

вместо этого

 android:layout_width="match_parent" 

Вы должны использовать

 android:layout_width="wrap_content" android:layout_gravity="center" 

Проблема в том, что у меня нет макета (сделанного мной для этого числа), поэтому мне нужно установить эти параметры программно, но я не знаю, как это сделать.

Извините, я неправильно понял раньше. Вам просто нужно создать родительское представление и поместить в него свой сборщик, используя wrap_content. Вот как вы это делаете в коде:

 final NumberPicker picker = new NumberPicker(activity); picker.setMinValue(0); picker.setMaxValue(5); final FrameLayout parent = new FrameLayout(activity); parent.addView(picker, new FrameLayout.LayoutParams( FrameLayout.LayoutParams.WRAP_CONTENT, FrameLayout.LayoutParams.WRAP_CONTENT, Gravity.CENTER)); builder.setView(parent);