안드로이드 개발 질문/답변
(글 수 45,052)
private void showElapsedTime() { long elapsedMillis = SystemClock.elapsedRealtime() - mChronometer.getBase(); Toast.makeText(FastTouch.this, "Elapsed milliseconds: " + elapsedMillis, Toast.LENGTH_SHORT).show(); Log.i("DEBUG", "REsult777777777777777777 = " + elapsedMillis ); Intent nextpage = new Intent(FastTouch.this,Second.class); nextpage.putExtra("time", elapsedMillis); startActivity(nextpage); } ====================================== 다른액티비티
public Intent mIntent = new Intent(); public long times; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mIntent = getIntent(); mIntent.getLongExtra("name",times); Log.i("DEBUG","setDate : " + times);
이 액티비티에서 다음 액티비티로 long형자료를 전송하는대요 시간값입니다 이게 다음액티비티 가기전에
전송하는 변수 elapsedMills의 값을 로그켓으로 확인해보니 분명히 값이 있는데 전송하고나면 값이 0 가 되어있네요
아래는 로그켓화면
06-25 05:44:12.356: INFO/DEBUG(727): REsult777777777777777777 = 21426 06-25 05:44:12.366: INFO/ActivityManager(53): Starting activity: Intent { cmp=sk.fggdgg/.Second (has extras) } 06-25 05:44:12.555: INFO/DEBUG(727): setDate : 0 06-25 05:44:12.845: INFO/ActivityManager(53): Displayed activity sk.fggdgg/.Second: 335 ms (total 335 ms)
2010.06.25 16:18:02
음.. api를 좀 정확히 보시면 될텐데.
mIntent.getLongExtra(
mIntent.getLongExtra(
"name"
,times); // 이부분이 오류입니다.
getLongExtra() 반환형이 long 형이구요. 전달한 쪽의 값을 반환해 줍니다.
1. tag는 "time" 되어야 합니다.
2. times의 위치는 default 값이어야 합니다. (time tag로 넘겨주는 값이 없을 때 설정하는 값입니다.)
public long getLongExtra (String name, long defaultValue)
Since: API Level 1
Retrieve extended data from the intent.
Parameters
name
The name of the desired item.
defaultValue
the value to be returned if no value of the desired type is stored with the given name.
Returns
- the value of an item that previously added with putExtra() or the default value if none was found.
See Also
뭔가 착각하셨나 보네요..
전달해 주는 쪽과 전달 받는 쪽의 tag가 동일해야 합니다.