我是Android开发的新手,在使用意图作为getIntent().getExtras()时,我遇到了一些新的东西。
请任何人解释一下我们如何编写getIntent().getExtras(),因为到目前为止,我知道的是我们可以通过创建特定类的对象来调用方法,但是这里是通过使用getIntent()方法调用方法getExtras()。
发布于 2017-11-12 14:27:08
getIntent().getExtras()用于获取存储在包中的意图的值。意图类用于在活动之间切换。但有时我们需要将数据从一种活动发送到另一种活动。因此,在这个特定的时刻,我们需要设置一些可以转移到目的地活动的意图值。我们可以通过以下代码实现这一点-
Bundle bundle = new Bundle();
bundle.putString("key1","someValue");
Intent intent=new Intent(FirstActivity.this,SecondActivity.class);
intent.putStringExtra("key","value");
intent.putExtras(bundle);
startActivity(intent);
现在,在第二个活动中,我们可以得到"key“的值,这样我们就可以在第二个活动中使用它。为此,我们使用getIntent().getIntent可以存储一个Bundle。让我们看看一个例子-
Intent intent=getIntent();
Bundle valueFromFirstActivity = intent.getExtras();
String valueOfKey = intent.getStringExtra("key");
String valueOfKey = bundle.getString("key1");
这样,人们就可以从活动中获得价值。Bundle是一个类,它可以在其内部保存值,并且可以使用putExtras()将bundle的实例赋予意图。它在传输自定义数组列表方面很有帮助。
发布于 2017-11-12 14:23:22
我们可以通过创建特定类的对象来调用方法。
getIntent()是一个返回意图对象的方法。当您调用getIntent().getExtras()时,首先返回意图对象,然后调用getExtras()方法。
这种调用方式称为方法链接(Fluent接口)。
https://stackoverflow.com/questions/47249706
复制相似问题