2015-04-15 85 views
0

我上的應用程序工作在那裏我不得不打開或關閉使用SwitchPreference
音樂落實SwitchPreference安卓 我尋覓了很多,但找不到我的水平有幫助
我不知道如何做一些事情時,SwitchPreference改變 下面沒有碎片

<?xml version="1.0" encoding="utf-8"?> 

<SwitchPreference 
    android:key="sound" 
    android:summaryOff="Sound is Off" 
    android:summaryOn="Sound is On" 
    android:title="Sound" > 
</SwitchPreference> 
<SwitchPreference 
    android:key="Music" 
    android:summaryOff="Music is Off" 
    android:summaryOn="Music is On" 
    android:title="background Music" > 
</SwitchPreference> 

<CheckBoxPreference 
    android:key="Time" 
    android:summaryOff="Time Reduced to 1 mint" 
    android:summaryOn="Time increased to 1:40 mint" 
    android:title="Minimum Time" > 
</CheckBoxPreference> 

0的代碼給出

喜好類是這裏

import android.content.SharedPreferences; 
import android.content.SharedPreferences.OnSharedPreferenceChangeListener; 
import android.os.Bundle; 
import android.preference.PreferenceActivity; 
import android.preference.SwitchPreference; 
import android.util.Log; 

public class PrefrencesClass extends PreferenceActivity{ 

backGroundMusic bckMusic = new backGroundMusic(); 
SwitchPreference swichpref; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    addPreferencesFromResource(R.xml.pref); 
    swichpref = (SwitchPreference) findPreference("Music"); 
} 
} 

在mainClass我叫這個像這樣

public void onClick(View v) { 
switch (v.getId()) { 
case R.id.setting: 
Intent prefIntent = new Intent(this,PrefrencesClass.class); 
startActivity(prefIntent); 
break; 
}} 

下一個是什麼
請幫助

回答

0

您有幾種選擇:

由於這似乎是一個「全球偏好」,你可以在onResume/Start中,通過從共享首選項中讀取密鑰來檢查開關首選項的值。

您還可以設置SharedPreferences.onSharedPreferenceChangeListener,請參閱此answer for some caveats

+0

onSharedPreferenceChanged 讓我試試 –

+0

無法正常工作,請分享一些代碼使其工作,我使用onSharedPreferenceChanged,onResume(),onPuse()方法。請分享一些代碼,我是初學者 –

+0

對於onSharedPreferenceChanged,你是否看到任何呼叫?你註冊了聽衆嗎?沒有看到你的來源,很難說出發生了什麼。 –