2011-09-07 35 views
1

在我的項目中,我正在使用語音識別。我想把這個課程的結果傳遞給另一個課程。但是,因爲這個班不是一個活動班,我不能使用意圖。我在語音識別使用的代碼是這樣的:如何將一個活動類的參數發送到一個普通的類?

保護無效onActivityResult(INT requestCode,INT resultCode爲,意圖數據) {

 if (requestCode == REQUEST_CODE && resultCode == RESULT_OK){ 
     ArrayList<String> matches = new ArrayList<String>(); 
    matches = data.getStringArrayListExtra(RecognizerIntent.EXTRA_RESULTS); 


    if(matches.size()>0) { 
     result = matches.get(0);}} 

我想利用這一結果,並使用另一個類,這是不一個活動課。所以請幫助我

回答

0

你可以聲明您ArrayList的一個靜態的這個樣子,

public static ArrayList<String> array = new ArrayList<String>(); 

這樣做,你可以從任何地方通過

activity_name.array; 

訪問您的ArrayList,其中ACTIVITY_NAME是該活動或類你聲明靜態ArrayList

+0

我想從其他類沒有聲明該數組。我有另一個類叫做上傳。這不是一個活動課。在該類中有一個函數「uploadmetadata.setTitle(result)」。我希望語音識別類中的結果在該函數中使用。 –

+0

是的,你可以聲明你的結果變量爲公共靜態,並且可以從任何地方訪問它。 –

+0

如果您有進一步的查詢來到休閒聊天室。 –

0

您需要保存數據。爲此,您可以使用SQlite, SharedPreference or static variable ..

0

您可以在該普通類內定義setter/getters。稍後,通過使用該類的setter方法通過對象來檢索值。

+0

我不知道如何正確使用。我想使用像uploadmetadata.setTitle(result)那樣的結果。但這個函數在另一個類,我提到 –

相關問題