java - 输入 EditText 值后的 Action 延迟

标签 java android

您好,我正在尝试允许用户在单击按钮执行操作后更改延迟时间。我试过这个,其中时间是编辑文本并使用时间而不是处理程序下的数字。

Long delay=time.getText().toString().trim();

但是我收到错误不兼容的类型如果有人对此有解决方案请帮助我知道这很简单但我不明白。

代码

 b1.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Handler handler = new Handler();
            handler.postDelayed(new Runnable() {
                @Override
                public void run() {



            String tittle=ed1.getText().toString().trim();
            String subject=ed2.getText().toString().trim();
            String body=ed3.getText().toString().trim();

            NotificationManager notif=(NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE);
            Notification notify=new Notification(R.drawable.noti,tittle,System.currentTimeMillis());
            PendingIntent pending= PendingIntent.getActivity(getApplicationContext(), 0, new Intent(), 0);

            notify.setLatestEventInfo(getApplicationContext(),subject,body,pending);
            notif.notify(0, notify);
                }
            }, 12000);
        }
    });

最佳答案

不兼容类型错误是因为您正在将 String 值分配给 long 变量。您必须先将 String 值转换为 long,然后才能将其存储在 delay 变量中。

做类似的事情

String delayStr = time.getText().toString().trim();
long delay = Long.parseLong(delayStr);

或在一行中

long delay = Long.parseLong(time.getText().toString().trim());

关于java - 输入 EditText 值后的 Action 延迟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30623498/

相关文章:

java - 需要帮助修改正则表达式

java - 未从 AsyncTask/onPostExecute 调用重载 ArrayAdapter 的 getView

android - React Native 权限不打印状态

android - 允许在调用 stopForeground(false) 后取消通知

java - 如何获取 json 中每个对象的级别,其中对象可以有任意数量的相同对象类型的子对象

java - 正则表达式连接多个匹配项

javascript - Java 8 LocalDate 到 JavaScript 日期

android - 使用终端创建测试项目时无法在android studio中加载主项目的project.properties

java - 从浏览器获取图像的位图

java - 读取(日志)文件而不锁定其他进程的重命名/移动