我想创建一个简单的闹钟,但我不知道为什么应用程序在calendar.set(Calendar.HOUR_OF_DAY, timePicker.getHour());
. 一切似乎都按照说明进行。
import android.annotation.TargetApi;
import android.app.AlarmManager;
import android.os.Build;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.Button;
import android.widget.TimePicker;
import java.util.Calendar;
public class MainActivity extends AppCompatActivity {
TimePicker timePicker;
Button button;
AlarmManager alarmManager;
Calendar calendar;
@TargetApi(Build.VERSION_CODES.M)
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
timePicker = (TimePicker) findViewById(R.id.timpik);
button = (Button) findViewById(R.id.bpik);
alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY, timePicker.getHour());
calendar.set(Calendar.MINUTE, timePicker.getMinute());
}
}
这是布局文件的样子
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="com.example.administrator.myapplication.MainActivity">
<TimePicker
android:id="@+id/timpik"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<Button
android:id="@+id/bpik"
android:text="Start"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
这个方法的使用取决于使用的是哪个版本的android。您的错误有一个解决方案:
这里是question_1以及article_1和article_2为您的问题提供可能的解决方案。