Intent в Android операционной системе является программным механизмом , который позволяет пользователям координировать функции различных видов деятельности для достижения задачи. Intent — это объект обмена сообщениями, который предоставляет средство для выполнения поздней привязки времени выполнения между кодом в различных приложениях в среде разработки Android . Его наиболее значимое использование — запуск действий, где его можно рассматривать как связующее звено между действиями: намерения обеспечивают систему обмена сообщениями между приложениями, которая поощряет совместную работу и повторное использование компонентов .
Intent — это в основном пассивная структура данных, содержащая абстрактное описание действия, которое необходимо выполнить. Для чайников подобное намерение — щелкнуть переключателем: «Ваше намерение состоит в том, чтобы включить свет, и для этого вы выполняете действие по переключению переключателя в положение« Вкл. »
Эта концепция была создана для того, чтобы позволить разработчикам легко ремикшировать различные приложения и позволять обрабатывать каждый тип задачи (называемой активностью ) наиболее подходящим для него приложением, даже если оно предоставляется третьей стороной. Хотя эта концепция не была новой, архитектура Android не требует повышенных привилегий для доступа к компонентам, что делает ее открытой платформой .
Действия в Android определяются как классы, которые контролируют жизненный цикл задачи в пользовательском интерфейсе. Действия, поддерживаемые приложением, объявляются в Manifests , чтобы другие приложения могли читать, какие действия поддерживаются. Намерения в одном приложении могут запускать определенные действия в другом приложении, если последнее поддерживает тип сообщения Intent.
Для начала на нашу кнопку добавим строку:
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:onClick="onClick1"/>
alt+enter по onClick1, переходим на MainActivity.kt (konlin) MainActivity.java (java)
На Kotlin:
fun onClick(view: View) {
val intent= Intent (this, MainActivity2::class.java)
startActivity(intent)
}
Первый параметр – это Context. Активность является подклассом Context, поэтому мы можем использовать её как MainActivity.this, или укороченную запись this.
val —это как конечная переменная, и она известна как неизменяемая в kotlin и может быть инициализирована только один раз. значение изменяемых переменных может быть изменено в любое время, в то время как вы не можете изменить значение неизменяемых переменных.
На Java:
public void onClick1(View view) {
Intent intent= new Intent(MainActivity.this, MainActivity2.class);
startActivity(intent);
}