#android #android-activity
#Android #android-activity
Вопрос:
У меня новая проблема. Я создаю таймер Android. В основном действии вы можете выбрать, как долго будет работать таймер. Если вы выбрали значение, должно появиться действие таймера. Мой вопрос прост: как? Я не знаю, как действие таймера может узнать, как долго должен работать таймер. Кто-нибудь может мне сказать, пожалуйста?
Ответ №1:
В намерении, которое вы используете для запуска нового действия, поставьте дополнительный, который указывает количество времени, на которое должен быть установлен таймер. Допустим, вы намереваетесь запустить это вызываемое действие таймера timeIntent
, и количество времени, на которое вы хотите установить таймер, указано в переменной called amountOfTime
, вы бы сделали следующее:
timerIntent.putExtra("time amount", amountOfTime);
startActivity(timerIntent);
Одно ваше действие в таймере, вы можете получить эту сумму, позвонив getIntent()
и getExtra()
вот так:
Intent myIntent = getIntent();
int timeAmount = 0;
if(myIntent!= null amp;amp; myIntent.hasExtra("time amount"){
timeAmount = myIntent.getIntExtra("time amount", 0);
}
Комментарии:
1. Спасибо! Этот ответ работает. Приведенные ниже ответы тоже хороши, но вы были первыми.
Ответ №2:
В вашем основном действии вы захотите добавить дополнительное значение в свое намерение для использования вашим действием таймера:
Intent i = new Intent(this, TimerActivity.class);
i.putExtra("timer_length", 3000);
startActivity(i);
Затем в вашем действии по таймеру вы получите дополнительные функции Intent и сделаете то, что вам нужно, с переданным значением:
public void onCreate(Bundle b) {
super.onCreate(b);
setContentView(R.layout.timer_layout);
long length = getIntent().getLongExtra("timer_length", -1);
if (length == -1)
//do failure
else
//do what you need with the timer length value
}