Кнопка из пункта меню нажимается только со второго раза

196
26 сентября 2017, 05:27

Здесь осуществляется обработка события после нажатия на кнопку меню

    public void settingCount(MenuItem item) {
        item.setOnMenuItemClickListener(new MenuItem.OnMenuItemClickListener() {
            @Override
            public boolean
 onMenuItemClick(MenuItem item) {
            LayoutInflater layoutInflater = LayoutInflater.from(context);
            View view = layoutInflater.inflate(R.layout.setting_dialog, null);
            AlertDialog.Builder dialogBuilder = new AlertDialog.Builder(context);
            dialogBuilder.setView(view);
            final EditText editTextString = (EditText) view.findViewById(R.id.editTextDialogString);
            final EditText editTextColumn = (EditText) view.findViewById(R.id.editTextDialogColumn);
            final RadioButton radioBinary = (RadioButton) view.findViewById(R.id.radioButtonDialogBinary);
            final RadioButton radioBipolar = (RadioButton) view.findViewById(R.id.radioButtonDialogBipolar);
            if (typeFunction) {
                radioBipolar.setChecked(true);
            } else {
                radioBinary.setChecked(true);
            }
            flag = typeFunction;
            View.OnClickListener radioButtonClickListener = new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    RadioButton radioButton = (RadioButton) v;
                    switch (radioButton.getId()) {
                        case R.id.radioButtonDialogBinary:
                            typeFunction = false;
                            break;
                        case R.id.radioButtonDialogBipolar:
                            typeFunction = true;
                            break;
                        default:
                            break;
                    }
                }
            };
            radioBinary.setOnClickListener(radioButtonClickListener);
            radioBipolar.setOnClickListener(radioButtonClickListener);
            dialogBuilder
                    .setCancelable(false)
                    .setPositiveButton("OK", new DialogInterface.OnClickListener() {
                        @Override
                        public void onClick(DialogInterface dialog, int which) {
                            try {
                                column = Integer.parseInt(editTextColumn.getText().toString());
                                string = Integer.parseInt(editTextString.getText().toString());

                                viewPresentation(column, string);
                            } catch (Exception ex) {
                                Toast.makeText(context, "Вводите только лишь цифры!!!", Toast.LENGTH_SHORT).show();
                                typeFunction = flag;
                                dialog.cancel();
                            }
                        }
                    })
                    .setNegativeButton("Отмена",
                            new DialogInterface.OnClickListener() {
                                @Override
                                public void onClick(DialogInterface dialog, int which) {
                                    dialog.cancel();
                                }
                            });
            AlertDialog alertDialog = dialogBuilder.create();
            alertDialog.show();
            return true;
        }
    });
}
READ ALSO
Описание классов с использование ООП

Описание классов с использование ООП

На сколько корректно примерное описание классов?

216
ImageView не отображается в FrameLayout

ImageView не отображается в FrameLayout

Не могу программно поместить изображение (на основе выбранной позиции в spnner) во FrameLayout

208
CalendarView ограничение возможности выбора дат

CalendarView ограничение возможности выбора дат

Подскажите новенькому в Android Studio

214
Парсинг строки в объект Java

Парсинг строки в объект Java

Есть String, в которой Json ответ, как в Java можно распарсить это строку в объект? Есть ли какие-нибудь внешние или стандартные бибилиотеки?

321