哪个是声明意图和开始 activity 的更好方式?
Which is the better way of declaring intent and start activity?
我在 Youtube、Stack Overflow 和其他地方看到了一些 Intent
声明,我发现了两种类型的 Intent
声明。
第一种:
Intent intent = new Intent(FirstActivity.this, SecondActivity.class);
startActivity(intent);
第二种:
startActivity(new Intent(FirstActivity.this, SecondActivity.class));
我的问题是哪种声明 Intent
的方法更好?两种声明有什么显着差异吗?
性能上没有区别,实际取决于您的喜好。
就个人而言,我更喜欢第一个选项,因为将 Intent
分配给新变量更清晰,以后我可以轻松添加更多额外内容。
这主要是偏好。哪个更容易read/understand?我总是用第一个。
如果您需要添加 intent extras 或设置它的操作,无论如何您都希望使用第一个。
它的工作原理是一样的,但是如果你想设置 activity 启动的标志,或者你想在 Intent 中放置一些 values/objects 以发送到目标 activity,第一种方式会更加清晰易懂。
例如
// First type
Intent intent = new Intent(FirstActivity.this, SecondActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.putExtra("name","xyz");
intent.putExtra("email","abc@gmail.com");
startActivity(intent);
// Second type
startActivity(new Intent(FirstActivity.this, SecondActivity.class)
.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)
.putExtra("name","xyz")
.putExtra("email","abc@gmail.com"));
我在 Youtube、Stack Overflow 和其他地方看到了一些 Intent
声明,我发现了两种类型的 Intent
声明。
第一种:
Intent intent = new Intent(FirstActivity.this, SecondActivity.class);
startActivity(intent);
第二种:
startActivity(new Intent(FirstActivity.this, SecondActivity.class));
我的问题是哪种声明 Intent
的方法更好?两种声明有什么显着差异吗?
性能上没有区别,实际取决于您的喜好。
就个人而言,我更喜欢第一个选项,因为将 Intent
分配给新变量更清晰,以后我可以轻松添加更多额外内容。
这主要是偏好。哪个更容易read/understand?我总是用第一个。
如果您需要添加 intent extras 或设置它的操作,无论如何您都希望使用第一个。
它的工作原理是一样的,但是如果你想设置 activity 启动的标志,或者你想在 Intent 中放置一些 values/objects 以发送到目标 activity,第一种方式会更加清晰易懂。 例如
// First type
Intent intent = new Intent(FirstActivity.this, SecondActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.putExtra("name","xyz");
intent.putExtra("email","abc@gmail.com");
startActivity(intent);
// Second type
startActivity(new Intent(FirstActivity.this, SecondActivity.class)
.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)
.putExtra("name","xyz")
.putExtra("email","abc@gmail.com"));