Ho trovato il modo modificando in tal modo il codice:
WindowManager wm=(WindowManager)getSystemService(WINDOW_SERVICE);
WindowManager.LayoutParams params=new WindowManager.LayoutParams(
WindowManager.LayoutParams.WRAP_CONTENT,
WindowManager.LayoutParams.WRAP_CONTENT,
WindowManager.LayoutParams.TYPE_SYSTEM_ERROR,
0,
PixelFormat.TRANSLUCENT);
params.gravity= Gravity.RIGHT | Gravity.TOP;
altrimenti l'azione non parte.L'azione è come evento TouchEvent nel codice della View:
public class Immagine extends View {
Paint paint;
Context context;
public Immagine(Context context) {
super(context);
this.context=context;
paint=new Paint();
paint.setStyle(Paint.Style.FILL);
paint.setStrokeWidth(5);
paint.setColor(Color.RED);
}
@Override
public boolean onTouchEvent(MotionEvent event){
Uri ringtoneUri= RingtoneManager.getActualDefaultRingtoneUri(context,RingtoneManager.TYPE_RINGTONE);
Ringtone ringtone=RingtoneManager.getRingtone(context,ringtoneUri);
ringtone.play();
return true;
}
@Override
protected void onDraw(Canvas canvas){
super.onDraw(canvas);
canvas.drawCircle(100, 100, 50, paint);
}.
}
Il toast non ha una durata illimitata. Ciò è strano.Ci ho messo altre gestioni dell'evento come il cambiamento di colore dell'activity, e, come qui, una suoneria.
Adesso dovrei esercitarmi a creare un pulsante libero e dargli una funzione.
Però voglio creare un Service di quelli "stabili". Il codice non lo ricordo per niente...
Nessun commento:
Posta un commento