2017-09-18 56 views
0

這很奇怪,這個問題還沒有被問到。從片段中的活動獲取布爾值

我需要檢查手機存儲在我的活動,在我的片段獲取返回的值

/*MainActivity*/ 
boolean hasLowStorage(){ 
    IntentFilter lowStorageFilter = new IntentFilter(Intent.ACTION_DEVICE_STORAGE_LOW); 
    return registerReceiver(null, lowStorageFilter) != null; 
} 

當調用從活動的空隙的方法,我們這樣做:

/*fragment*/ 
((MainActivity) getActivity()).yourMethod(); 

怎麼辦我們從片段中調用布爾值的值?

回答

1

更改範圍,然後再試一次。

// MainActivity

public boolean hasLowStorage(){ 
     IntentFilter lowStorageFilter = new IntentFilter(Intent.ACTION_DEVICE_STORAGE_LOW); 
     return registerReceiver(null, lowStorageFilter) != null; 
    } 

//片段

boolean bolValue = ((MainActivity) getActivity()).hasLowStorage(); 
1

試試這個:方法的公共

boolean yourValue = ((MainActivity) getActivity()).hasLowStorage(); 
+0

已經試過了。 「無法解析符號」 – Lucem

0

讓它公共靜態這樣

/*MainActivity*/ 
public static boolean hasLowStorage(){ 
IntentFilter lowStorageFilter = new 
IntentFilter(Intent.ACTION_DEVICE_STORAGE_LOW); 
return registerReceiver(null, lowStorageFilter) != null; 
} 

,並調用它像

boolean yourValue = 
MainActivity.hasLowStorage(); 

快樂編碼:)