嗨我试图允许用户在点击按钮后执行操作后更改延迟时间。我试过这个,其中时间是编辑文本和使用时间而不是处理程序下的数字。
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);
}
});
答案 0 :(得分:1)
不兼容类型错误是因为您要为String
变量分配long
值。您必须先将String
值转换为long
,然后才能将其存储在delay
变量中。
执行类似
的操作String delayStr = time.getText().toString().trim();
long delay = Long.parseLong(delayStr);
或一行
long delay = Long.parseLong(time.getText().toString().trim());