Можно ли продлить эффект нажатия кнопки на андроиде, даже если пользователь больше не касается кнопки? - PullRequest
0 голосов
/ 22 мая 2019

Мне нужно, чтобы приложение работало так, как если бы нажатие кнопки длилось дольше, чем это было на самом деле.

Например, пользователь дотрагивается до кнопки в течение 1 секунды, приложение добавляет количество Х заданного времени на это прикосновение, устройство думает, что пользователь просто перестал нажимать кнопку после истечения времени Х, даже если пользователь передвинул палец до того, как установится количество времени X, которое устанавливается точно в тот момент, когда пользователи перестают касаться кнопки.

1 Ответ

0 голосов
/ 22 мая 2019

Добавьте сенсорный слушатель в вашем представлении и реализуйте свою логику в методе onTouch (). Вот так:

 button.setOnTouchListener(new View.OnTouchListener() {

                    @Override
                    public boolean onTouch(View view, MotionEvent event) {
                        if (event.getEventTime() > Expected time) {

                            // implement your logic here
                            AlertDialog alertDialog = new 
                            AlertDialog.Builder(MainActivity.this).create();
                            alertDialog.setTitle("Alert");
                            alertDialog.setMessage("Alert message to be shown");
                            alertDialog.setButton(AlertDialog.BUTTON_NEUTRAL, "OK",
                                    new DialogInterface.OnClickListener() {
                                        public void onClick(DialogInterface dialog, int which) {
                                            dialog.dismiss();
                                        }
                                    });
                            alertDialog.show();
                        button.setEnabled(false);


                            return true;

                        }
                        return true;

                    }

                });
...