2015-07-19 72 views
0

我想創建我在Android Studio中第一個應用程序,在主屏幕上有三個勾選框,詢問他們想要的骰子的哪一方面的號碼用戶。我有一個被稱爲雙方的變量,它被設置爲6,8或12,具體取決於用戶滴答的勾號框。我想要第二個活動的變量「sides」,這樣它就可以用來生成一個和任何「sides」設置的隨機整數。如何在java中的多個類中使用變量?

回答

1

在第一項活動讓我們假設你有按鈕GO。當你點擊按鈕GO時,它應該啓動第二個活動,說Activity2。 添加以下的活性2的onCreate方法,你可以按照如下的檢索關鍵字的值碼的onClick GO按鈕的現在

Intent act2=new Intent(this,Activity2.class);//"this" is activity reference 
act2.putExtra("key",value); 
startActivity(act2); 

Int key=getIntent().getIntExtra("key",0);//0 is default value 

在爲完成上面你可以傳遞值以同樣的方式「側面」變量下一個活動

+0

它的工作感謝您的幫助 –

-1

這可以通過靜態全局變量或可通過繼承類訪問的​​公共變量來完成。但是導入全局靜態類也是一樣的。

+0

公共變量和繼承訪問變量是在Java中使用多個類變量的方法有兩種。 –

0

,你也可以將它保存在內部存儲,當你需要加載它,這是非常有用的,因爲這樣你可以在每一個活動,你想每一個類加載它。

你可以學到如何here。 我建議看三部分。

0

可以使用SharedPreferences,

爲了獲得共享偏好,用下面的方法在您的活動:

SharedPreferences prefs = this.getSharedPreferences(
    "com.example.app", Context.MODE_PRIVATE); 

閱讀喜好:

String dateTimeKey = "com.example.app.datetime"; 

// use a default value using new Date() 
long l = prefs.getLong(dateTimeKey, new Date().getTime()); 

編輯和保存喜好

Date dt = getSomeDate(); 
prefs.edit().putLong(dateTimeKey, dt.getTime()).apply(); 

android sdk的示例目錄包含檢索和存儲共享首選項的示例。它位於:

<android-sdk-home>/samples/android-<platformversion>/ApiDemos directory 
0

最簡單的方法是使用單例類。

public class DataHolder { 


public int sides = 0; 

    private static DataHolder dataHolder = new DataHolder(); 

    public static DataHolder getInstance() 
    { 
     return dataHolder; 
    } 


} 

DataHolder.getInstance().sides=sideInActivityA;

您可以通過使用 int sideInActivityB = DataHolder.getInstance().sides;

相關問題