К сожалению, clearRange()
удаляет события заметок и мета-события, но, как вы заметили, не удаляет события темпа (следующая версия документации сделает это явным - спасибо, что поймали это). AKSequencer
имеет закрытый метод clearTempoEvents
, вызываемый внутри с помощью метода setTempo()
, поэтому вы можете использовать setTempo()
для очистки всех существующих событий темпа. Конечно, после удаления существующих событий темпа это также добавит новое событие темпа в начале последовательности с темпом, который вы включите в качестве аргумента.
Таким образом, он точно не даст вам последовательность без событий темпа, но для последовательности нужен темп, и без событий темпа по умолчанию он будет равен 120, так что заставлять вас явно указывать начальный темп не так уж и сложно. плохо. В любом случае, если только вам действительно не нужно, чтобы события темпа не были абсолютно невозможны, setTempo()
должен выполнить трюк для очистки всех существующих событий темпа в последовательности.