【发布时间】:2013-11-22 20:05:19
【问题描述】:
我在同一个活动中使用了 2 个意图。其中一个用于输入 Firstname、Lastname 和 Id。其他意图用于将数据发送到另一个活动。 但是当我使用类似代码的意图时,它不起作用。 我可以使用这样的意图吗
intent.putExtra("lastName", intent2.getString("lastName"));
搜索活动
Intent intent = new Intent(getApplicationContext(),SearchActivity.class);
Bundle b=new Bundle();
b.putString("firstName", firstName);
b.putString("lastName", lastName);
b.putString("id", id);
b.putParcelable("LoginPartClass",lp2);
intent.putExtras(b);
startActivity(intent);
搜索活动代码
final Bundle intent2 = getIntent().getExtras();
Intent intent = new Intent(getApplicationContext(),AnotherActivity.class);
intent.putExtra("keywords", keywords);
if(intent2!=null) {
final String Firstname=intent2.getString("firstName");
intent.putExtra("firstName", Firstname); }
intent.putExtra("lastName", intent2.getString("lastName"));
intent.putExtra("id", intent2.getString("id"));
}
startActivity(intent);
Parceable 类
public class LoginPart implements Parcelable{
private Token requestoken;
private OAuthService s;
private String authURL;
public LoginPart(Token Token, OAuthService S, String AuthURL) {
requestoken = Token;
s = S;
authURL = AuthURL;
}
public LoginPart( ) {
}
public Token getRequestoken() {
return requestoken;
}
public void setRequestoken(Token requestoken) {
this.requestoken = requestoken;
}
public OAuthService getS() {
return s;
}
public Parcelable getSParcelable() {
return (Parcelable) s;
}
public void setS(OAuthService s) {
this.s = s;
}
public String getAuthURL() {
return authURL;
}
public void setAuthURL(String authURL) {
this.authURL = authURL;
}
public int describeContents() {
// TODO Auto-generated method stub
return 0;
}
public void writeToParcel(Parcel dest, int flags) {
// TODO Auto-generated method stub
dest.writeValue(requestoken);
dest.writeValue(s);
dest.writeValue(authURL);
}
}
问题与 Parcable 类有关。当我使用 Parceable 类时会崩溃。我该如何解决?
【问题讨论】:
-
getIntent().getExtras();包含上一个活动发送的参数。 -
您应该重新考虑如何命名变量。
intent2不是Intent而是Bundle所以有点令人困惑,恕我直言。你有什么问题?如果它崩溃然后发布你的logcat。如果这是问题,您可以将数据从Bundle添加到另一个Intent。 -
我编辑了问题。因为问题与 parceable 类有关。如果我删除意图它会成功。所以问题与 parceable 类有关
标签: java android android-intent android-activity parcelable