2012-07-17 53 views
0

我想在我的服務類VandroidService2傳遞變量到我的活動類VandroidServiceClient: 下面是代碼發送是在VandroidService2的varible:傳遞變量從服務活動

  long accel = 8987; 
     Intent myIntent = new Intent(VandroidService2.this,VandroidServiceClient.class); 
     myIntent.putExtra("accel1", accel); 

這裏我用於接收它在VandroidServiceClient的代碼:

  TextView textView = (TextView) findViewById(R.id.textViewName); 
      Intent mIntent = getIntent(); 
      long lovalue = mIntent.getLongExtra("accel1", 0); 
      textView.setText(String.valueOf(lovalue)); 

出於某種原因,默認變量0被顯示到屏幕上?我是什麼做錯了,並需要更多的信息來幫助我嗎?

+0

它看起來像它應該工作...我假設你使用'startActivity(myIntent);'在VandroidService2? – Sam 2012-07-17 18:54:47

+0

我用this.startActivity(myIntent) – CIM 2012-07-17 18:57:31

+0

但仍然沒有工作 – CIM 2012-07-17 18:57:58

回答

2

嘗試intent.getExtras(),檢查,如果不爲空,如果不爲空,然後.getLong("accel1", 0);

如果確保在你之前已經完成,這將工作。

+0

談論一些像:mIntent.getExtras();如果(mIntent.getExtras()!= NULL){ \t長lovalue = mIntent.getLong( 「ACCEL1」,0); textView.setText(String.valueOf(lovalue)); //} } – CIM 2012-07-17 19:03:26

+0

'mIntent.getExtras()。getLong(「name」,defaultvalue);' – 2012-07-17 19:17:15