2012-05-31 52 views
1

我有一個問題的VAR傳遞到其他活動: 這是我拿的變量:無法將VAR傳遞到其他活動

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.scelta);    
    // l'intent di questa activity 
    Intent intent=getIntent(); 
    String pkg = getPackageName(); 
    //prendiamo i dati   
    nome=intent.getStringExtra(pkg+".myNome"); 

這是我改變活動:

public void checkout (View v){ 
    // l'intent di questa activity 
    Intent intent; 
    String pkg=getPackageName(); 
    intent=new Intent(getApplicationContext(), checkout.class); 
    //li reinseriamo nell'intent 
    intent.putExtra(pkg+".myNome", nome); 
    intent.putExtra(pkg+".myId", id); 

    Log.d(TAG,"questo è il nome che va ad instargh:"+nome); 
    startActivity(intent); 
} 

感謝日誌我確定「nome」具有我想要的值。 這是我採取「myNome」

public class checkout<targhe> extends ListActivity 
{String sId=null; 
@Override 
public void onCreate(Bundle savedInstanceState){ 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.checkout); 
    Intent intent; 
    String pkg=getPackageName();      
    intent=new Intent(getApplicationContext(), scelta.class); 
    nome=intent.getStringExtra(pkg+".myNome"); 
    Log.D(TAG,"name"+nome);} 

與此日誌「諾姆」總是空。我不明白爲什麼我不能從意圖採取我的諾莫:/

這不是所有的代碼,但部分對我的問題是重要的。

有人可以幫助我嗎?

+0

這與答案沒有任何關係,但實際上告訴我,你是否有要求使用非英語變量的命名,或者這是你的個人願望? – hovanessyan

回答

4

仔細看你的代碼

在結賬活動你寫

nome=intent.getStringExtra(pkg+".myNome"); 

替換上面的代碼符合以下

nome=getIntent().getStringExtra(pkg+".myNome"); 
+0

謝謝:)現在功能全部:D – Lorenzo

+0

如果它解決了你的問題,你應該把它作爲接受的答案來接受它。 –

1

checkout,嘗試改變

Intent intent;     
intent=new Intent(getApplicationContext(), scelta.class); 

Intent intent = getIntent(); 

然後看看是否有效。

此外,在同一包中是否都是Activity?如果不是,getPackageName()將在兩個不同。

0

您應該使用getIntent()。getStringExtra(pkg +「。myNome」);