2011-11-02 25 views
0

我的應用程序從一個主要活動開始,這主要活動有其自身onTouchListener這是在其自己的類並從這個onTouchClass即時調用一個AlertDialog去除手指時從屏幕和它的工作..從這個AlertDialog我有一個意圖,開始活動二。所有變量,我從我的類調用獲取NULL值或0

但我在onTouch類中有兩個變量,我將在活動二中需要所以我嘗試在AlertDialog中啓動onTouch類併爲每個需要的變量創建一個.putExtra。

Intent i = new Intent(); 
i.setClass(context, ActivityTwo.class); 
i.putExtra("Value1", onTouchClass.integer1); 
i.putExtra("Value2", onTouchClass.integer2); 
Log.d("Info", "Value1: " + onTouchClass.integer1); 
Log.d("Info", "Value2: " + onTouchClass.integer2); 
context.startActivity(i); 

我沒有記錄在這裏和它也爲0,在另一邊(即得到啓動的活動),我這樣做:

getValue1 = extras != null? extras.getInt("Value1"): -1; 
getValue2 = extras != null? extras.getInt("value2"): -1; 
Log.d("Info", "Value1: " + getValue1); 
Log.d("Info", "Value2: " + getValue2); 

然後即時採取在logcat的一個找theese日誌和它說:值1:0和值2:0

而且我知道應該有我的onTouchClass我有這個它檢查值CUS,如果我有一個值:

GeoPoint p = mapview.getProjection().fromPixels((int) e.getX(), (int) e.getY()); 
integer1 = p.getLatitudeE6(); 
integer2 = p.getLongitudeE6(); 
Log.d("Info", "Value1: " + integer1); 
Log.d("Info", "Value2: " + integer2); 

從logcat中theese日誌中我得到的值。但是爲什麼沒有努力讓該數值到其他類???

+0

嘗試登錄這裏的價值,並讓我們知道你做了什麼: 意向書I =新意圖(); i.setClass(context,ActivityTwo.class); Log.d( 「信息」, 「值1:」 + onTouchClass.integer1); Log.d(「Info」,「Value2:」+ onTouchClass.integer2); i.putExtra(「Value1」,onTouchClass.integer1); i.putExtra(「Value2」,onTouchClass.integer2); context.startActivity(i); – Hiral

+0

我在那裏記錄,你可以看到我更新了這個問題。它也顯示0 – Rakso

+1

這意味着,在整數1更新的價值觀和整數2是不是在你的AlertDialog本身,它被傳遞到下一個活動讓你有同樣的結果反映。嘗試使用SharedPreference對象來存儲這兩個值並將它們置於AlertDialog中。 – Hiral

回答

0

嘗試通過字符串值,而不是onTouchClass.integer1的這個整數值

檢查什麼都值店onTouchClass.integer1。傳球意圖打印此值之前

並檢查日誌。