bullheadandplato / AndroidEqualizer

Android Equalizer View that can also manage the audio track frequencies
Apache License 2.0
236 stars 72 forks source link

Save Equalizer mode when app is closed !! #6

Closed abhi-9605 closed 4 years ago

bullheadandplato commented 5 years ago

Can someone do PR for this?

abenkdh commented 5 years ago

i got solution, save value to sharedprefence

example :

if (!sharedpreference.contains("1")) {
                points[i] = Settings.seekbarpos[i] - lowerEqualizerBandLevel;
                dataset.addPoint(frequencyHeaderTextView.getText().toString(), points[i]);
                seekBar.setProgress(Settings.seekbarpos[i] - lowerEqualizerBandLevel);
            } else {
                mEqualizer.setBandLevel(equalizerBandIndex, (short) (sharedpreference.getInt(String.valueOf(seekBar.getId()),0) + lowerEqualizerBandLevel));
                points[i] = mEqualizer.getBandLevel(equalizerBandIndex) - lowerEqualizerBandLevel;
                dataset.addPoint(frequencyHeaderTextView.getText().toString(), points[i]);
                seekBar.setProgress(sharedpreference.getInt(String.valueOf(seekBar.getId()),0));
                Settings.seekbarpos[i] = mEqualizer.getBandLevel(equalizerBandIndex);
            }
            seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
                @Override
                public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
                    mEqualizer.setBandLevel(equalizerBandIndex, (short) (progress + lowerEqualizerBandLevel));
                    points[seekBar.getId()] = mEqualizer.getBandLevel(equalizerBandIndex) - lowerEqualizerBandLevel;
                    Settings.seekbarpos[seekBar.getId()] = (progress + lowerEqualizerBandLevel);
                    Settings.equalizerModel.getSeekbarpos()[seekBar.getId()] = (progress + lowerEqualizerBandLevel);
                    dataset.updateValues(points);
                    chart.notifyDataUpdate();
                    sharedpreference.edit().putInt(String.valueOf(seekBar.getId()), progress).apply();
                }

                @Override
                public void onStartTrackingTouch(SeekBar seekBar) {
                    presetSpinner.setSelection(0);
                    Settings.presetPos = 0;
                    Settings.equalizerModel.setPresetPos(0);
                }

                @Override
                public void onStopTrackingTouch(SeekBar seekBar) {

                }
            });

        }