Android 久坐提醒实现 - 带弹窗提醒 (完整代码)
以下是一个使用Android实现久坐提醒的示例代码,包含弹窗提醒功能。
MainActivity.java
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.os.Handler;
import android.view.WindowManager;
public class MainActivity extends Activity {
private Handler handler;
private Runnable runnable;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 设置全屏显示
getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
// 初始化Handler和Runnable
handler = new Handler();
runnable = new Runnable() {
@Override
public void run() {
// 显示久坐提醒对话框
showSitReminderDialog();
}
};
// 开启计时器,每30分钟执行一次提醒
startTimer(30 * 60 * 1000);
}
@Override
protected void onDestroy() {
super.onDestroy();
// 停止计时器
stopTimer();
}
private void startTimer(int interval) {
// 取消之前的计时任务
handler.removeCallbacks(runnable);
// 开始新的计时任务
handler.postDelayed(runnable, interval);
}
private void stopTimer() {
// 取消计时任务
handler.removeCallbacks(runnable);
}
private void showSitReminderDialog() {
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle('久坐提醒');
builder.setMessage('您已经连续久坐一段时间了,请起身活动一下身体。');
builder.setPositiveButton('知道了', new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// 继续计时
startTimer(30 * 60 * 1000);
}
});
builder.setCancelable(false);
builder.show();
}
}
activity_main.xml
<RelativeLayout 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=".MainActivity">
<!-- 在布局中添加其他控件 -->
</RelativeLayout>
请注意,这只是一个简单的示例,实际应用中可能需要更复杂的逻辑和界面设计。此外,为了使提醒对话框能够在屏幕上弹出,确保应用具有悬浮窗口权限。
更多关于Android开发的内容,请访问我们的网站。

原文地址: http://www.cveoy.top/t/topic/Qra 著作权归作者所有。请勿转载和采集!