java - Implementation function inside OnClickListener - Android -


i wanna call method "criarnotificacao" -> createnotification, inside function onclick, error can't implement it, friend tell me create anonymous class, don't understand "too much".. how can it? there simple method this?

package br.com.notification;  import android.app.activity; import android.app.notification; import android.app.notificationmanager; import android.app.pendingintent; import android.content.context; import android.content.intent; import android.os.bundle; import android.view.view; import android.widget.button; import android.widget.textview;  public class createnotificationactivity extends activity {      button btnnotifica;      @override     protected void oncreate(bundle savedinstancestate) {         super.oncreate(savedinstancestate);         textview text = new textview(this);         text.settext("notificação disparada.");         setcontentview(r.layout.main);          // texto que aparecerá na barra de status (chamada para notificação)         string tickertext = "você recebeu uma mensagem.";          // detalhes da notificação         charsequence titulo = "andré";         charsequence mensagem = "exemplo de notificação";          // exibe notificação         //criarnotificacao(this, tickertext, titulo, mensagem, notificationreceiveractivity.class);          //começar brincar aqui!         btnnotifica = (button) findviewbyid(r.id.button1);          btnnotifica.setonclicklistener(new button.onclicklistener() {             public void onclick(view v) {                 //call notification here             }                   });       }        // exibe notificacao     public void criarnotificacao(context context, charsequence mensagembarrastatus,         charsequence titulo, charsequence mensagem, class activity) {         // recupera o serviço notificationmanager         notificationmanager nm = (notificationmanager) getsystemservice(notification_service);         notification n = new notification(r.drawable.jo, mensagembarrastatus, system.currenttimemillis());          // pendingintent para executar activity se o usuário selecionar notificação         pendingintent p = pendingintent.getactivity(this, 0, new intent(this, activity), 0);          // flag utilizada para remover notificação da barra de status         // quando o usuário clicar nela         n.flags |= notification.flag_auto_cancel;          // informações         n.setlatesteventinfo(this, titulo, mensagem, p);          // espera 100ms e vibra por 250ms, espera por mais 100ms e vibra por 500ms         n.vibrate = new long[] { 100, 250, 100, 500 };          //id da notificacao         nm.notify(r.string.app_name, n);     }  } 

i imagine error you're getting because you're trying call this within scope of onclick, won't result in current context.

what need instantiate final variable outside of click listener store current context.

also, other variables non-global, need instantiated final well; in order used within onclick handler.

// texto que aparecerá na barra de status (chamada para notificação) final string tickertext = "você recebeu uma mensagem.";  // detalhes da notificação final charsequence titulo = "andré"; final charsequence mensagem = "exemplo de notificação";  // current context final context context = this;  //começar brincar aqui! btnnotifica = (button) findviewbyid(r.id.button1);  btnnotifica.setonclicklistener(new button.onclicklistener() {     public void onclick(view v) {         criarnotificacao(context, tickertext, titulo, mensagem, notificationreceiveractivity.class);     } }); 

Comments

Popular posts from this blog

c++ - OpenCV Error: Assertion failed <scn == 3 ::scn == 4> in unknown function, -

php - render data via PDO::FETCH_FUNC vs loop -

The canvas has been tainted by cross-origin data in chrome only -