如何将一个 activity 与多个可能值一起使用

How to use one activity with multiple possible values

所以我有一个 activity,其中包含一个配置文件名称列表,需要 link 到另一个具有扩展配置文件描述的屏幕。

那么是否可以使用意图的 putExtra()getExtra() 方法来传递一个值,该值可用于引用 android:text(TextView) 和 android:src(属于 ImageView)?如果有可能实现这一点,代码将如何进行?

通常传递描述符会更好。如果必须传递某些数据,我会发送 id 以供发送。然后使用intent中的id获取对应的数据,然后想怎么用就怎么用。

示例:我假设您列表中的每个个人资料项目都有一个唯一的 ID。在创建启动扩展配置文件的意图时传递此 ID activity:

Intent i = new Intent(activitycontext, ExpandedProfileActivity.class);
i.putExtra("uniqueid", uniqueIDofIndividualProfile);
startActivity(i);

在 ExpandedProfileActivity onCreate() 中:

Intent i = getIntent();
long uniqueId = i.getLongExtra("uniqueid", -1L);

if (uniqueId != -1L) {
    // obtain data from database using uniqueId;
}

是的,有可能。

第一个Activity

EditText editText = (EditText) findViewById(R.id.text);

Intent intent = new Intent(context, secondActivity.class);
// Text of the edit text
intent.putExtra(KEY_TEXT, editText.getText().toString());
// Id of the image in res folder
intent.putExtra(KEY_IMAGE, R.drawable.myimage);
context.startActivity(intent);

第二个Activity(onCreate)

Intent intent = getIntent();
String text = intent.getStringExtra(KEY_TEXT, null);
int imageId = intent.getIntExtra(KEY_IMAGE, 0);
// do stuff with 'text' and 'imageId'