Android Number Picker получает значение для textview

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

Код активности java:

public class SecondActivity extends Activity { public void button2 (View v){ View v1 = getLayoutInflater().inflate(R.layout.dialog1, null); NumberPicker picker = (NumberPicker) v1.findViewById(R.id.np1); picker.setMinValue(1); picker.setMaxValue(20); picker.setWrapSelectorWheel(false); //final int number = picker.getValue(); AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setView (v1); builder.setTitle("Cantidad"); builder.setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { return; } }); builder.setNegativeButton(android.R.string.cancel, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { return; } }); AlertDialog dialog = builder.create(); dialog.show(); } @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_second); } } 

Макет отображения:

 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="wrap_content" android:layout_height="wrap_content"> <NumberPicker android:id="@+id/np1" android:layout_width="fill_parent" android:layout_height="fill_parent" /> </LinearLayout> 

Макет деятельности:

 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="ale.demarco.ale005.SecondActivity$PlaceholderFragment" > <TextView android:id="@+id/Text2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/Text2" android:textSize="20sp"/> <Button android:id="@+id/button2" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/button2" android:onClick="button2" android:layout_gravity="right" /> </LinearLayout> 

Используйте picker.getValue() чтобы получить текущее значение сборщика.

Когда Dialog кнопка « Dialog , обновите TextView в Activity с выбранным значением

  builder.setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { int pickedValue = picker.getValue(); // set your TextView id instead of R.id.textView1 TextView textView = (TextView)findViewById(R.id.textView1); textView.setText(Integer.toString(pickedValue)); return; } }); 

Вы также можете добавить слушателя для прослушивания изменений числа, подобных этому

 picker.setOnValueChangedListener(new NumberPicker.OnValueChangeListener() { @Override public void onValueChange(NumberPicker picker, int oldVal, int newVal) { // do your other stuff depends on the new value } }); 

Обязательно добавьте окончательный квалификатор к вашему NumberPicker:
NumberPicker picker = (NumberPicker) v1.findViewById(R.id.np1);
в
final NumberPicker picker = (NumberPicker) v1.findViewById(R.id.np1);

Intereting Posts
NullPointerException при ротации во время dispatchCreateOptionsMenu, трассировка стека не включает никаких функций в моем приложении Пропустили 49 кадров! Приложение может слишком много работать над своей основной нитью Maxlength атрибут ввода в html не работает на HTC One M7 Использование RoboSpice с Jackson2 и Spring Первые две страницы с одинаковым значением в представлении пейджера Android. Как отключить его? Передача растрового изображения между двумя действиями Передача огромных данных из сервлета в приложение для Android Picasso загружает изображения в неправильное изображение в адаптере списка Как отфильтровать только соответствующие мультимедийные файлы в Android? Как повысить согласованность уведомлений о входе / выходе Android geofence? AlarmManager – Как повторить будильник в верхней части каждого часа? MPAndroidChart: скрыть 0 меток значений в столбчатой ​​гистограмме AccountManager не позволяет добавлять новую учетную запись в приложение (caller uid отличается от uid аутентификатора) Моя сборка не работает, когда я использую Ant для сборки и проект Android с несколькими библиотеками Java.util.concurrent.RejectedExecutionException в Async Task Android