下列选项中,可以将Bundle对象封装到Intent对象中的方法是()。 A.putExtra() B.putExtras() C.putStringExtra0 D.putlntExtra(
时间: 2024-03-13 16:42:55 浏览: 153
答案是B.putExtras()。在Android中,Intent是一种用于在组件之间传递数据和启动组件的对象。通过Intent对象,可以将数据封装到Bundle对象中,然后再将Bundle对象封装到Intent对象中。其中,putExtras()方法用于将Bundle对象封装到Intent对象中。例如,以下代码演示了如何将一个包含字符串数据的Bundle对象封装到Intent对象中:
```
Intent intent = new Intent(MainActivity.this, SecondActivity.class);
Bundle bundle = new Bundle();
bundle.putString("name", "Tom");
bundle.putInt("age", 20);
intent.putExtras(bundle);
startActivity(intent);
```
在上面的代码中,putExtras()方法将一个包含字符串数据和整数数据的Bundle对象封装到Intent对象中,然后通过startActivity()方法启动一个新的Activity。因此,选项B是正确的描述。而选项A的putExtra()方法用于将单个数据封装到Intent对象中;选项C的putStringExtra()方法不存在;选项D的putlntExtra()方法用于将整数数据封装到Intent对象中。
相关问题
intent.putextras(bundle)
As an AI language model, I am not able to access the context of your code. However, I can provide you with a general explanation of the method `putExtras()` of the `Intent` class in Android.
`putExtras()` is a method used to add extra information to an `Intent` object. It takes a `Bundle` object as a parameter which contains key-value pairs of the extra information you want to add. The `Bundle` object can be created using the `putExtra()` method of the `Bundle` class.
The extra information can be any type of data such as strings, integers, arrays, or even custom objects. The `Intent` object can then be passed to another activity or service using the `startActivity()` or `startService()` methods.
In summary, `putExtras()` is used to add extra information to an `Intent` object and the `Bundle` object parameter contains the key-value pairs of this extra information.
在android studio中,1.创建2个Activity,分别为MainActivity和SecondActivity。 2.利用Intent的putExtra()方法传递数据。 利用Bundle类传递数据。
好的,下面是一个在 Android Studio 中实现的示例代码,演示了如何创建 MainActivity 和 SecondActivity,并且通过 Intent 和 Bundle 分别传递数据:
1. 通过 Intent 的 putExtra() 方法传递数据
在 Android Studio 中创建一个新项目,并且在 MainActivity 中添加以下代码:
```
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 在 MainActivity 中创建 Intent 对象,并且传递数据
Intent intent = new Intent(MainActivity.this, SecondActivity.class);
intent.putExtra("name", "Tom");
intent.putExtra("age", 18);
startActivity(intent);
}
}
```
在上述代码中,我们创建了一个 Intent 对象,并且使用 putExtra() 方法传递了两个数据,分别为 "name" 和 "age"。然后我们使用 startActivity() 方法启动了 SecondActivity。
在 Android Studio 中创建一个新的 Activity,并且在 SecondActivity 中添加以下代码:
```
public class SecondActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_second);
// 在 SecondActivity 中获取传递过来的数据
Intent intent = getIntent();
String name = intent.getStringExtra("name");
int age = intent.getIntExtra("age", 0); // 第二个参数为默认值,表示如果获取不到数据则返回 0
// 在 SecondActivity 中打印获取到的数据
Log.d("SecondActivity", "Name: " + name + ", Age: " + age);
}
}
```
在上述代码中,我们通过 getIntent() 方法获取传递过来的 Intent 对象,并且使用 getIntExtra() 和 getStringExtra() 方法获取具体的数据。然后我们使用 Log.d() 方法打印获取到的数据。
2. 利用 Bundle 类传递数据
在 MainActivity 中添加以下代码:
```
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 在 MainActivity 中创建 Bundle 对象,并且传递数据
Bundle bundle = new Bundle();
bundle.putString("name", "Tom");
bundle.putInt("age", 18);
Intent intent = new Intent(MainActivity.this, SecondActivity.class);
intent.putExtras(bundle);
startActivity(intent);
}
}
```
在上述代码中,我们创建了一个 Bundle 对象,并且使用 put() 方法传递了两个数据,分别为 "name" 和 "age"。然后我们使用 putExtras() 方法将 Bundle 对象传递给 Intent 对象,最后使用 startActivity() 方法启动了 SecondActivity。
在 SecondActivity 中添加以下代码:
```
public class SecondActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_second);
// 在 SecondActivity 中获取传递过来的数据
Intent intent = getIntent();
Bundle bundle = intent.getExtras();
String name = bundle.getString("name");
int age = bundle.getInt("age");
// 在 SecondActivity 中打印获取到的数据
Log.d("SecondActivity", "Name: " + name + ", Age: " + age);
}
}
```
在上述代码中,我们通过 getIntent() 方法获取传递过来的 Intent 对象,并且使用 getExtras() 方法获取 Bundle 对象,然后使用 getString() 和 getInt() 方法获取具体的数据。最后我们使用 Log.d() 方法打印获取到的数据。
以上就是通过 Intent 和 Bundle 在 Activity 之间传递数据的基本方法,在 Android Studio 中的实现步骤。需要注意的是,在传递数据的时候,传递的数据类型需要与接收数据的类型一致。希望能对你有所帮助!
阅读全文