Android:我们什么时候使用getIntent()?

问题描述 投票:7回答:3

我不明白为什么我们使用方法qazxsw poi。

因为,当我们需要那个方法时,我们可以使用方法getIntent()

但通过使用onActivityResult()方法,它可能导致getIntent()

android android-intent onactivityresult
3个回答
19
投票

NullPointerException

返回启动此活动的意图。

如果您使用某些数据启动活动,例如通过执行

http://developer.android.com/reference/android/app/Activity.html#getIntent()

您可以使用新活动中的getIntent检索此数据:

Intent intent = new Intent(context, SomeActivity.class);
intent.putExtra("someKey", someData);

因此,它不是用于处理来自Activity的返回数据,例如onActivityResult,而是用于将数据传递给新的Activity。


2
投票

Intent intent = getIntent(); intent.getExtra("someKey") ... 用于将数据从活动传递到另一个活动,例如,如果要从名为getInent的活动切换到另一个名为startActivity的活动,并且您希望在endActivity中知道来自startActivity的数据,请执行以下操作:

endActivity

startActivity

String dataToTransmit="this info text will be valid on endActivity"; Intent intent =new Intent(this, endActivity.class); intent.putExtra("dataToTransmitKey",dataToTransmit); startActivity(intent);

endActivity

0
投票
Intent intent = getIntent();
String dataTransmited=intent.getStringExtra("dataToTransmitKey");

在您的详细信息活动:

listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {

            Intent intent = new Intent(ItemListView.this, ViewItemClicked.class);
            String name = itemList.get(position).getString(1);
            String description = itemList.get(position).getString(2);
            String something_else = itemList.get(position).getString(3);
            intent.putExtra("name", name);
            intent.putExtra("description", description);
            intent.putExtra("something_else", something_else);
            startActivity(intent);
        }

现在使用字符串在所需的位置显示值:as

Intent intent = getIntent(); String name = intent.getStringExtra("name"); String description = intent.getStringExtra("description"); String something_else = intent.getStringExtra("something_else");

© www.soinside.com 2019 - 2024. All rights reserved.