Хорошо, давайте сделаем это просто.
У меня есть два способа начать действие, отличное от значения по умолчанию startActivity
Один : Использование статического start
метода
class LogInActivity : BaseAppCompatActivity() {
// other activity code goes here
companion object {
fun start(context: Context /*,extra params goes here*/) {
val intent = Intent(context, LogInActivity::class.java)
// intent.putExtra extra params
context.startActivity(intent)
}
}
}
Two : Использование статического getStartIntent()
метода для получения Intent
, необходимого для начала действия
class LogInActivity : BaseAppCompatActivity() {
companion object {
fun getStartIntent(context: Context /*,extra params goes here*/) : Intent {
val intent = Intent(context, LogInActivity::class.java)
// intent.putExtra extra params
return intent
}
}
}
Вопросы:
- Какой метод лучше и почему?
Я видел большинство ресурсов , предлагающих использовать второй метод.В чем может быть причина?
Будет ли утечка памяти в любом из этих методов?