相关疑难解决方法(0)

无法在Intent中传递自定义对象:对于类型Intent,Method Put Extra是不明确的

如果我试着写

Car myCarObject=getCar();
Intent details = new Intent(Start.this, DetailsCar.class);
                details.putExtra("Car", myCarObject);
                startActivity(details);
Run Code Online (Sandbox Code Playgroud)

Eclipse向我展示了一行编译错误"方法放置额外对于类型Intent是不明确的"

  details.putExtra("Car", myCarObject);
Run Code Online (Sandbox Code Playgroud)

如果我使用代码

Car myCarObject=getCar();
ArrayList<Car> parcelableExtra = new ArrayList<Car>();
                parcelableExtra.add(myCarObject);

Intent details = new Intent(Start.this, DetailsCar.class);
                details.putExtra("Car", parcelableExtra);
                startActivity(dettagli);
Run Code Online (Sandbox Code Playgroud)

我尝试在目标Intent中加载额外的代码

ArrayList<Car> parcelableExtra = new ArrayList<Car>();
        parcelableExtra = (ArrayList<Car>) getIntent().getExtras().getParcelable("Car");
        Car c=parcelableExtra.get(0);
Run Code Online (Sandbox Code Playgroud)

我收到了这个警告

12-14 05:30:07.669: W/Bundle(19823): Key Car expected Parcelable but value was a java.util.ArrayList.  The default value <null> was returned.
12-14 05:30:07.679: W/Bundle(19823): Attempt to cast generated internal exception:
12-14 05:30:07.679: W/Bundle(19823): java.lang.ClassCastException: java.util.ArrayList
12-14 …
Run Code Online (Sandbox Code Playgroud)

android parcelable android-intent

38
推荐指数
3
解决办法
6万
查看次数

标签 统计

android ×1

android-intent ×1

parcelable ×1