그래서 대학에서 내 프로젝트에 간단한 알람 시계를 만들고 있습니다. Android Studio를 사용하고 있습니다. 내가는 Calendar.set (...) 및 hour_string/minute_string없이 설정하면 바로 다른 응용 프로그램 작동이 중지, 알람이 완벽하게 작동 설정 표시,알람 응용 프로그램 Android Studio
public class AlarmActivity extends AppCompatActivity {
TimePicker alarm_timer;
TextView update_text;
Context context;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_alarm);
this.context = this;
// initialize
alarm_timer = (TimePicker) findViewById(R.id.timePicker);
update_text = (TextView) findViewById(R.id.textView);
//create instance of calendar
final Calendar calendar = Calendar.getInstance();
Button alarm_on = (Button) findViewById(R.id.bttnAlarmSet);
//onClickListener
assert alarm_on != null;
alarm_on.setOnClickListener(new View.OnClickListener() {
@TargetApi(Build.VERSION_CODES.M)
@Override
public void onClick(View v) {
calendar.set(Calendar.HOUR_OF_DAY, alarm_timer.getHour());
calendar.set(Calendar.MINUTE, alarm_timer.getMinute());
int hour = alarm_timer.getHour();
int minute = alarm_timer.getMinute();
//convert int values to string
String hour_string = String.valueOf(hour);
String minute_string = String.valueOf(minute);
//Change TextView
set_alarm_text("Alarm set to: "+ hour_string +":"+ minute_string);
}
});
}
//Method to Change text View
private void set_alarm_text(String output) {
update_text.setText(output);
}
:
여기에 코드입니다.
프로젝트 구조는 API19 : Android 4.4 (KitKat) 용입니다. 내 휴대 전화는 API23 : Android 5.1 (Lollipop)입니다.
나는 그것은 말한다 "전화는 API 레벨 23 (현재 분 19)가 필요합니다"calendar.set(Calendar.HOUR_OF_DAY, alarm_timer.getHour());
calendar.set(Calendar.MINUTE, alarm_timer.getMinute());
을 썼을 때. 작은 노란색 전구에서 자동으로 "@TargetApi (Build.VERSION_CODES.M)"라는 줄을 썼습니다. 나는 이것이 문제가있는 곳이라고 생각하지만, 자바 나 자바와 관련된 것은 나쁘다.
누구든지 나를 도울 수 있거나 적어도 실수를 발견하면, 나는 감사 할 것입니다!
오류 메시지는'@TargetApi ... '로 시작하는 줄을 제거하고 다시 시도하십시오 ... – alfasin
"호출에 API 수준 23 (현재 최소값은 19)"이 필요합니다. 의미하는 것은, 당신이 사용한 코드 라인이 새로운 android-os에서 개발되고 지원된다는 것입니다. –