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