2011-11-25 4 views
0

그래서 단추를 사용하여 경보를 설정하는 대신 두 개의 정수 (시간과 분) 사이에서 선택할 수있는 새로운 활동으로 넘어갑니다. 또는 int의 값에 액세스하여 변경하는 다른 작업을 수행 할 수 있습니까? 코드를 작성하는 더 좋은 방법이 있습니까?단추를 사용하여 경보 발생

내 코드는 지금까지입니다. 지금까지 제가 지금하고 있습니까?

public class AlarmPtest extends Activity implements android.view.View.OnClickListener{ 
/** Called when the activity is first created. */ 

Button SetAlarm, SetTimer; 
int hours = 1, min = 30; 

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
    Vars(); 

} 


private void AlarmClock() { 
    // TODO Auto-generated method stub 
    Intent i = new Intent(android.provider.AlarmClock.ACTION_SET_ALARM); 
    i.putExtra(android.provider.AlarmClock.EXTRA_HOUR, hours); 
    i.putExtra(android.provider.AlarmClock.EXTRA_MINUTES, min); 
    startActivity(i); 

} 


private void Vars() { 
    // TODO Auto-generated method stub 
    SetAlarm = (Button) findViewById(R.id.SetAlarm); 
    SetTimer = (Button) findViewById(R.id.TimerAlarm); 

    SetAlarm.setOnClickListener(this); 
    SetTimer.setOnClickListener(this); 
} 


public void onClick(View v) { 
    // TODO Auto-generated method stub 
    switch (v.getId()){ 
    case R.id.SetAlarm: 
     Toast alarmToast = Toast.makeText(this, "you click alarm", Toast.LENGTH_LONG); 
     alarmToast.show(); 
     AlarmClock(); 
    case R.id.TimerAlarm: 
     Toast TimerToast = Toast.makeText(this, "you get 15 min", Toast.LENGTH_LONG); 
     TimerToast.show(); 
     hours = 0 ; 
     min = 15; 
     AlarmClock(); 
    } 
} 

}

답변

1

코드는 당신의 시간과 분 알람 의도에 pased됩니다 의미에서 권리입니다. 그리고 알람이 안드로이드 따라서 사용자가 자바에서 안드로이드 SDK가> = 9

BTW 공통 코드 규칙이있는 경우 설정됩니다 smallLetters로 시작하는 함수 이름을 작성하는 것입니다. 따라서 기능을 다음으로 변경하십시오.

private void alarmClock() 
private void vars() 

그렇지 않으면 사람들이 나를 클래스라고 부르는 인상을받을 수 있습니다. 변수 이름에도 동일한 규칙이 사용되므로 다음과 같이 버튼을 변경해야합니다.

Button setAlarm, setTimer; 
+0

감사합니다. :) 그것은 나를 추가 할 수없는 원인을 메신저 너무 새로운하지만 네. 그래서 다른 습관으로 통과해야합니까? 또는 단지 같은 클래스 내에서 함수를 사용하십시오. – domshyra

+0

다른 클래스를 통해 전달할 필요가 없습니다. 기존 클래스에서이 함수를 사용하십시오. 행운을 빕니다 – Entreco

0

당신은 아마 TimePicker를 사용하는 것이 좋습니다. 이것은 알람 시간을 선택하기위한 좋은 인터페이스를 제공합니다. AlertDialog 유형 인터페이스에서 발생하므로 시간을 선택하려면 Activity을 새로 시작할 필요가 없습니다.

+0

AlertDialog 유형을 사용하지만 시간 형식이 아닌 숫자 만 처리하려고합니다. 안드로이드 주식과 매우 흡사합니다. 즉, 오전 6시에 알람을 설정하고 (오전 5시) 오전 1시에 알람을 설정하면 오전 2시에 오전 6시 또는 6시 22 분에 시간이 설정됩니다. – domshyra

관련 문제