Javascript 在android中,如何使用复选框或切换按钮从一个活动切换到另一个活动来打开或关闭特定的音频文件?

Javascript 在android中,如何使用复选框或切换按钮从一个活动切换到另一个活动来打开或关闭特定的音频文件?,javascript,android,audio,Javascript,Android,Audio,} 这是我的代码,我只是想在应用程序打开时关闭或打开指定的音频文件。我在另一个活动中有复选框或切换按钮。我正在使用媒体播放器和一些android编码的新功能,感谢阅读。我通过点击“溢出”设置设置操作,然后点击“设置”按钮转到“活动”,我希望在“设置”活动中单击检查时,在MainActivity.xml中关闭或重新打开音频。再次感谢您提前阅读和帮助。它在.create处出错,因为我无法使用类您必须使用共享首选项来执行此操作。这很简单。。与其制作活动,不如制作首选项屏幕。。按照以下步骤操作..:-

}


这是我的代码,我只是想在应用程序打开时关闭或打开指定的音频文件。我在另一个活动中有复选框或切换按钮。我正在使用媒体播放器和一些android编码的新功能,感谢阅读。我通过点击“溢出”设置设置操作,然后点击“设置”按钮转到“活动”,我希望在“设置”活动中单击检查时,在MainActivity.xml中关闭或重新打开音频。再次感谢您提前阅读和帮助。它在.create处出错,因为我无法使用类

您必须使用共享首选项来执行此操作。这很简单。。与其制作活动,不如制作首选项屏幕。。按照以下步骤操作..:-

1) 转到资源文件夹。 2) 创建一个名为“xml”的新文件夹。 3) 在您创建的xml文件夹中,创建一个名为“prefs.xml”的xml文件

在该sdd中,输入以下代码..:-

import android.app.Activity;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.CompoundButton.OnCheckedChangeListener;

public class Settings_Menu extends Activity {
private MediaPlayer mp;
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_settings_menu);

    TurnSoundOff();
}

private void TurnSoundOff() { 
    final CheckBox TurnSoundOff= (CheckBox) findViewById(R.id.StartupsoundoffBox);
    TurnSoundOff.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
        @Override
        public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
            if (TurnSoundOff.isChecked()){
                mp = MediaPlayer.create(MainActivity.class, R.raw.soundfile); //errors at .create since I can't use a class
                mp.stop();
            }else{
                mp = MediaPlayer.create(MainActivity.class, R.raw.soundfile);
                mp.start();
            }
        }});
}
此线程用于活动的计时器。。如果您不想任何计时器删除线程。。睡眠(****)中的值是以毫秒为单位的时间

添加此功能还可以在活动更改后停止歌曲

  ourSong = MediaPlayer.create(Splash.this, R.raw.splash_sound);

    SharedPreferences getPrefs = PreferenceManager
            .getDefaultSharedPreferences(getBaseContext());
    boolean music = getPrefs.getBoolean("music", true);
    if (music == true)
        ourSong.start();

    Thread timer = new Thread() {
        public void run() {
            try {
                sleep(1000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            } finally {

            }
        }
    };
    timer.start();
要获取溢出菜单,请执行以下操作:- 1) 创建一个名为“菜单”的新文件夹 2) 创建一个xml文件。。添加以下代码

@Override
protected void onPause() {
    // TODO Auto-generated method stub
    super.onPause();
    finish();
    ourSong.release();
}
最后生成一个名为Prefs的类并添加以下代码

@Override
public boolean onCreateOptionsMenu(android.view.Menu menu) {
    // TODO Auto-generated method stub
    super.onCreateOptionsMenu(menu);
    MenuInflater blowUp = getMenuInflater();
    blowUp.inflate(R.menu.cool_menu, menu);
    return true;
}

@Override
public boolean onMenuItemSelected(int featureId, MenuItem item) {
    // TODO Auto-generated method stub
    switch (item.getItemId()) {

    case R.id.preferences:
        Intent b = new Intent("com.example.code.PREFS");
                    //instead of 'com.example.code' write your package name 
        startActivity(b);
        break;
    case R.id.exit:
        finish();
        break;
    }
    return false;
}
最后在清单中添加类。。这方面的代码

import android.os.Bundle;
import android.preference.PreferenceActivity;

   public class Prefs extends PreferenceActivity{

@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    addPreferencesFromResource(R.xml.prefs);
}

}

您的操作名称应与onMenuItemSelected()中的意图中提到的相同。。。
这会起作用的……:)和平…

我不知道现在发生了什么,有问题。有视频我可以看吗?我让它工作了,但当按钮被勾选或取消勾选时声音仍在播放。现在我把它记下来了,我应该在哪里添加代码以便调用首选项?如果你得到答案,请不要忘了勾选。我已经实现了所有代码,但当我勾选检查时,它仍在播放声音,而不应该播放声音,我已将其设置为main.xml您让我创建的文件及其所有设置都有问题停止声音再次感谢您的帮助。我已亲自测试过,它工作正常。。但没问题,你只要给我你的电子邮件,我会给你发送项目。。您只需将其导入eclipse中即可……)
@Override
public boolean onCreateOptionsMenu(android.view.Menu menu) {
    // TODO Auto-generated method stub
    super.onCreateOptionsMenu(menu);
    MenuInflater blowUp = getMenuInflater();
    blowUp.inflate(R.menu.cool_menu, menu);
    return true;
}

@Override
public boolean onMenuItemSelected(int featureId, MenuItem item) {
    // TODO Auto-generated method stub
    switch (item.getItemId()) {

    case R.id.preferences:
        Intent b = new Intent("com.example.code.PREFS");
                    //instead of 'com.example.code' write your package name 
        startActivity(b);
        break;
    case R.id.exit:
        finish();
        break;
    }
    return false;
}
import android.os.Bundle;
import android.preference.PreferenceActivity;

   public class Prefs extends PreferenceActivity{

@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    addPreferencesFromResource(R.xml.prefs);
}

}
 <activity
        android:name="com.example.code.Prefs"
        android:label="Preferences" >
        <intent-filter>
            <action android:name="com.example.code.PREFS" />

            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
    </activity>