JavascriptProva

sabato 30 luglio 2016

Activity RingtoneSettings con scelta della suoneria personalizzata e durata dell'attesa di risposta

Impostato anche il codice per la seekBar che specifica l'intervallo di attesa della suoneria prima di desistere.
Ecco il codice completo:
public class RingtoneSettings extends Activity {

 TimerService mService;
 boolean mBound;
 SharedPreferences SP;
 Button bttRingtones;
 SeekBar seekBarAttesa;
 TextView txtAttesa;
 
 int attesaMinima=10;
 
 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_ringtone_settings);
  seekBarAttesa=(SeekBar)findViewById(R.id.seekBar1);
  txtAttesa=(TextView)findViewById(R.id.textView1);
  SP=(SharedPreferences)getApplicationContext().getSharedPreferences("settings", Context.MODE_PRIVATE);
  
  bttRingtones=(Button)findViewById(R.id.button1);
  bttRingtones.setOnClickListener(new View.OnClickListener() {
   
   @Override
   public void onClick(View v) {
    mService.StopTime();
    Intent intent=new Intent(RingtoneManager.ACTION_RINGTONE_PICKER);
    startActivityForResult(intent,0);
    
   }
  });
  
  seekBarAttesa.setMax(120-attesaMinima);
  int numero=SP.getInt("attesa",attesaMinima);
  int realProgress=numero-attesaMinima;
  txtAttesa.setText(""+numero);
  seekBarAttesa.setProgress(realProgress);
  seekBarAttesa.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
   
   @Override
   public void onStopTrackingTouch(SeekBar seekBar) {
    // TODO Auto-generated method stub
    
   }
   
   @Override
   public void onStartTrackingTouch(SeekBar seekBar) {
    // TODO Auto-generated method stub
    
   }
   
   @Override
   public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
    int realProgress=5*(progress/5);
    int numero=realProgress+attesaMinima;
    txtAttesa.setText(""+numero);
    SharedPreferences.Editor editor=SP.edit();
    editor.putInt("attesa", numero);
    editor.commit();
    
   }
  });
 }
 
 @Override
 public void onActivityResult(int requestCode, int resultCode, Intent data){
  if(resultCode!=RESULT_OK)return;
  Uri ringtoneUri=data.getParcelableExtra(RingtoneManager.EXTRA_RINGTONE_PICKED_URI);
  SharedPreferences.Editor editor=SP.edit();
  editor.putString("suoneria", ringtoneUri.toString());
  editor.commit();
 }
 
 
 
 @Override
 public void onStart(){
  super.onStart();
  Intent i=new Intent(getApplicationContext(),TimerService.class);
  bindService(i,mConnection,Service.BIND_AUTO_CREATE);
 }
 
 @Override
 public void onStop(){
  super.onStop();
  if(mBound){
   unbindService(mConnection);
   mBound=false;
  }
 }
 
 ServiceConnection mConnection=new ServiceConnection(){

  @Override
  public void onServiceConnected(ComponentName name, IBinder service) {
   LocalBinder bnd=(LocalBinder)service;
   mService=bnd.getService();
   mBound=true;
  }

  @Override
  public void onServiceDisconnected(ComponentName name) {
   mBound=false;
   
  }
  
 };
  
}

Nessun commento:

Posta un commento