0

我有 getFilmsBrowse 函数,它应该返回以下字段:

  • 名称(字符串)
  • 描述(字符串)
  • 年(国际)
  • 等等

此函数的结果要在另一个函数 displayMovies 中使用。如何传递它们并能够使用 displayMovies 中的字段名称?想使用Map相同的,但我不清楚如何初始化它。

4

4 回答 4

4

你可以使用一个集合,但为什么不创建一个名为 Film 的类,其中包含名为 name、description、year 等的私有成员变量,然后是 getYear() 之类的访问器方法。然后你可以这样做:

Film film = getFilmsBrowse(...);
int year = film.getYear();
于 2011-03-25T19:57:12.450 回答
1

您可以Bundle为此使用类。它就像 a Map,但它可以包含不同类型的值。

于 2011-03-25T19:57:33.573 回答
1

创建一些将保存数据的模型类:

public class Page implements Serializable {
    private String name;
    private String description;
    //and so on...
    public Page(String name, String description) {
        this.name = name;
        this.description = description;
    }
    public String getName() {
        return name;
    }
    public String getDescription() {
        return description;
    }
}

现在您可以Page通过构造函数创建一个对象并用数据(名称,描述)填充它。可以选择制作一些二传手。

Page p = new Page("James", "Hello World");
startActivity(new Intent(context, MyActivity.class).putExtra("Page", p));

PageMyActivity它的onCreate方法中检索你的:

Page p = (Page)getIntent().getExtras().getSerializable("Page");
Toast.makeText(this, "Name: " + p.getName() + ", Description:" + p.getDescription(), Toast.LENGTH_LONG).show();
于 2011-03-25T20:03:48.753 回答
0

如果您从 Activity 移动到 Activity,您将使用 Intents 和 Bundle 来传递参数。如果您正在调用一个函数并返回到您的原始活动,那么您将使用传统的 java

于 2011-03-25T19:57:43.090 回答