i'm c# programmer , pretty new android programming.
in case of following codes below, recommendation refactor? many listener inside of listener make hard refactor.
in c#, async/await can return value httpclient can isolate json communication logic code.
but far know, android listener requires final keyword in order send result outside of scope, , final cannot accept value after http communication (i use loopj httpclient).
note app minimum requrement api version 8.
// delete button remove post. buttondelete.setonclicklistener(new view.onclicklistener() { @override public void onclick(view view) { // show dialog ask delete. dialog.showmessagedialog(postviewactivity.this, getstring(r.string.dialogdeletepost), new dialoginterface.onclicklistener() { @override public void onclick(dialoginterface dialoginterface, int i) { // async http delete send. mainactivity.httpclient.delete(serverurl.question.tostring() + "/" + id, new asynchttpresponsehandler() { @override public void onsuccess(string s) { // when result received, close current activity. super.onsuccess(s); setresult(result_ok); questionviewactivity.this.finish(); } @override public void onfailure(throwable throwable, string s) { super.onfailure(throwable, s); } }); } }); } }); // show yes-no dialog public void showmessagedialog(context context, string message, dialoginterface.onclicklistener onyesclicklistener){ new alertdialog.builder(context) .setmessage(message) .setcancelable(false) .setpositivebutton(r.string.yes, onyesclicklistener) .setnegativebutton(r.string.cancel, null) .show(); }
Comments
Post a Comment