2016-04-14 33 views
0

Bir intimi başka bir sınıfa geçirmeyi denedim ve tamsayıyı başarılı bir şekilde geçirmeyi başardım ancak bir Bundle'ı bir Tamsayıya dönüştürme konusunda emin değilim. AmaçtanBundle'ı Tamsayıya Dönüştür (Intents)

Kodu:

private void nextPage() 
{ 
    Intent intent = new Intent(this, Timer.class).putExtra("totalTime", totalTime); 
    startActivity(intent); 
} 

Kod Zamanlayıcı sınıfında: önceden

Bundle time = getIntent().getExtras(); 

    if(time == null) 
    { 
     timeDisp.setText("Failed."); 
    } 
    else 
    { 
     totalTimeMs = Integer.parseInt(String.valueOf(time)); 
     timeDisp.setText(totalTimeMs); 
    } 

Teşekkür :)

cevap

0

Niyet doğrudan tüm java ilkel türleri ve parcelable/seri tutabilir: Sonra Gruptan Dize almak istiyorum

private void nextPage() 
{ 
    Intent intent = new Intent(this, Timer.class); 
    Bundle b = new Bundle(): 
    b.putString("totalTime", totaltime); 

    intent.putExtras(b); 
    startActivity(intent); 
} 

:

Sen tarafından bir paket veri ekleme istiyorum nesneler.

Paketleri de tutabileceği konusunda bir karışıklık olabilir.

Tamsayı bir Bundle uygulamanız gerekiyor mu? Mantıksal olarak birleştirilen çoklu değerler için geçerli olabilir. Intent API.

0

senin totalTime tip int ilişkinse, putExtra() sizi geçmesine Kullanabilirsiniz:

int time = getIntent().getExtras().getInt("totalTime"); 
0

Amacınızı bir Paket'e eklemiyorsunuz, bu nedenle alma işleminde boş bir Paket'den veri almaya çalışıyorsunuz.

Intent intent = getIntent(); 
Bundle extras = intent.getExtras(); 

String time = extras.getString("totalTime"); 
+0

aslında yeni niyet (...) putExtra ("tag", value) geçerlidir ve – Pooya

+0

nolu ürün paketine veri ekler. Her gün yeni bir şeyler öğreniyorum! Teşekkürler –