[英]Android : Alert dialog with sound file
在進入活動之前,我有一個彈出的警報對話框。 這是一個警報對話框,上面的復選框Don't Show this again
。 我添加了一個可讀取所有條款的mp3文件。 我嘗試了所有可能的方法,但沒有成功。 這就是我想要做的。
單擊I Agree
按鈕時,它應停止播放聲音文件。
當用戶單擊“不再顯示此復選框”時,再次進入活動后不應播放聲音。
每個線索都將被深深地運用。 提前thnx。
}
@Override
protected void onResume() {
AlertDialog.Builder warning1 = new AlertDialog.Builder(this);
LayoutInflater warning1Inflater = LayoutInflater.from(this);
View myLayout = warning1Inflater.inflate(R.layout.warning_layout, null);
final CheckBox dontShowAgain = (CheckBox) myLayout.findViewById(R.id.skip);
warning1 .setCancelable(false);
warning1 .setView(myLayout);
warning1 .setTitle("Warning!");
MediaPlayer mp = MediaPlayer.create(StartDialog.this,R.raw.terms);
mp.start();
warning1 .setIcon(R.drawable.alert1);
warning1 .setPositiveButton("I Agree", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
String checkBoxResult = "NOT checked";
if (dontShowAgain.isChecked())
checkBoxResult = "checked";
String PREFS_NAME = null;
SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
SharedPreferences.Editor editor = settings.edit();
editor.putString("skipMessage", checkBoxResult);
editor.commit();
MediaPlayer mp = MediaPlayer.create(StartDialog.this,R.raw.terms);
mp.stop();
return;
}
});
String PREFS_NAME = null;
SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
String skipMessage = settings.getString("skipMessage", "NOT checked");
if (!skipMessage.equals("checked"))
warning1 .show();
super.onResume();
您應該實現這一點。
dontShowAgain.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView,
boolean isChecked) {
// TODO Auto-generated method stub
switch (buttonView.getId()) {
case R.id.checkBox:
checkBoxResult = "checked";
String PREFS_NAME = "";
SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
SharedPreferences.Editor editor = settings.edit();
editor.putString("skipMessage", checkBoxResult);
editor.commit();
break;
}
}
});
然后單擊“ OK
按鈕,您必須關閉“ Dialog
。
現在您可以通過
SharedPreferences sp = getSharedPreferences("PREFS_NAME", 0);
boolean hasBeenChecked = sp.getBoolean("skipMessage", false);
if (!hasBeenChecked) {
show your dialog here
} else {
// do your stuff here
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.