我的应用程序通过带有音乐的启动画面开始,我使用 sharedpreference 停止音乐,这样下次打开应用程序时,启动画面仍然存在但没有音乐。
我试图获取具有三个独立不同选中框功能的首选项屏幕,并且如果您选择一个选中框,则无法选择其他两个,如下所示:
第一个选中框:使用下面的代码启动带有启动画面和音乐的应用程序(已实现)。
第二个选中框:使用下面的代码启动不带音乐的启动画面的应用程序(已实现)。
第三个选中框:启动没有启动画面和有音乐的应用程序(未实现)。
任何帮助将不胜感激,谢谢。
代码:
启动画面:
public class Splash extends Activity{
MediaPlayer ourSong;
@Override
protected void onCreate(Bundle savedInstanceState) {
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.splash);
ourSong = MediaPlayer.create(Splash.this, R.raw.splashsound);
SharedPreferences getPrefs = PreferenceManager.getDefaultSharedPreferences
(getBaseContext());
boolean music = getPrefs.getBoolean("checkbox", true);
if (music == true)
ourSong.start();
Thread timer = new Thread(){
public void run(){
try{
sleep(1000); }
catch (InterruptedException e){
e.printStackTrace(); }
finally{
Intent openMainActivity = new Intent("com.test.demo.MENU");
startActivity(openMainActivity); }}
};
timer.start(); }
@Override
protected void onPause() {
// TODO Auto-generated method stub
super.onPause();
ourSong.release();
finish();
}
}
首选项:
public class Prefs extends PreferenceActivity{
@SuppressWarnings("deprecation")
@Override
protected void onCreate(Bundle savedInstanceState) {
Boolean customTitleSupported = requestWindowFeature
(Window.FEATURE_CUSTOM_TITLE);
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.prefs);
}
}
prefs.xml:
<?xml version="1.0" encoding="utf-8" ?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
<CheckBoxPreference android:title="splash screen music"
android:defaultValue="true"
android:key="checkbox"
android:summary="remove mark to stop music when splash start" />
</PreferenceScreen>