第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會有你想問的

對話框關(guān)閉在適配器內(nèi)不起作用

對話框關(guān)閉在適配器內(nèi)不起作用

阿波羅的戰(zhàn)車 2024-01-05 16:25:37
我有一個(gè)模式(對話框),里面有編輯文本和發(fā)送按鈕,我想做的只是在單擊按鈕時(shí)發(fā)送編輯文本內(nèi)的內(nèi)容,問題是,發(fā)送內(nèi)容正在工作,但是當(dāng)我打電話時(shí)mydialog.dismiss();它不起作用。它使用另一個(gè)類的實(shí)例來調(diào)用方法改造,在“完成”和“未完成”按鈕內(nèi),我有一個(gè)“enviar”(發(fā)送)按鈕,這是我試圖關(guān)閉模式的按鈕。這是適配器代碼:public TasksAdapter(@NonNull Context context, @SuppressLint("SupportAnnotationUsage") @LayoutRes ArrayList<Tasks> list){    super(context, 0, list);    sContext = context;    taskData = list;}@NonNull@Overridepublic View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent){    View listItem = convertView;    if(listItem == null)        listItem = LayoutInflater.from(sContext).inflate(R.layout.item_tasks, parent,false);    final Tasks presenteTask = taskData.get(position);    TextView taskTitle = (TextView) listItem.findViewById(R.id.tasksTitle);    taskTitle.setText(presenteTask.getTitle());    EditText taskColor = (EditText) listItem.findViewById(R.id.taskColor);    if(presenteTask.getHexaColor().isEmpty()){        HexaColor = "#FFFFFF";    }    else{        HexaColor = presenteTask.getHexaColor();        taskColor.setBackgroundColor(Color.parseColor(HexaColor));    }    TextView taskTime = (TextView) listItem.findViewById(R.id.taskTime);    taskTime.setText(presenteTask.getTimeStart().toString().substring(0,5));    tasksModal = new Dialog(sContext);    tasksModal.setCancelable(false);    tasksModal.setContentView(R.layout.modal_tasksdone);    tasksModal.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));    final EditText comentarios = (EditText) tasksModal.findViewById(R.id.edtComentario);    final Calendario calendario = new Calendario();    Button done = (Button) listItem.findViewById(R.id.tasksDone);    done.setOnClickListener(new View.OnClickListener() {        @Override        public void onClick(View view) {            yorn = true;            tarefaId = presenteTask.getTaskId();            data = presenteTask.getDataTask();            hora = String.valueOf(presenteTask.getTimeStart());
查看完整描述

1 回答

?
暮色呼如

TA貢獻(xiàn)1853條經(jīng)驗(yàn) 獲得超9個(gè)贊

首先,您必須使對話框不可取消,以便外部單擊不會使用以下命令將其關(guān)閉tasksModal.setCancelable(false);


其次,無需重復(fù)代碼來在done/undone按鈕單擊內(nèi)創(chuàng)建對話框。因此,刪除它并將其移至TasksAdapter構(gòu)造函數(shù)。


第三,您不會在單擊按鈕時(shí)關(guān)閉對話框done。所以,添加這個(gè)tasksModal.dismiss();


檢查并嘗試使用以下代碼:


EditText comentarios;

Calendario calendario;


public TasksAdapter(@NonNull Context context, @SuppressLint("SupportAnnotationUsage") @LayoutRes ArrayList<Tasks> list){

    super(context, 0, list);

    sContext = context;

    taskData = list;

    tasksModal = new Dialog(sContext);

    tasksModal.setCancelable(false); //make it un cancelable

    tasksModal.setContentView(R.layout.modal_tasksdone);

    tasksModal.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));

    comentarios = (EditText) tasksModal.findViewById(R.id.edtComentario);

    calendario = new Calendario();

}

-------------------------------------------------------------

Button done = (Button) listItem.findViewById(R.id.tasksDone);

done.setOnClickListener(new View.OnClickListener() {

    @Override

    public void onClick(View view) {

        comentarios.setText("");

        yorn = true;

        tarefaId = presenteTask.getTaskId();

        data = presenteTask.getDataTask();

        hora = String.valueOf(presenteTask.getTimeStart());


        tasksModal.findViewById(R.id.btnSend).setOnClickListener(new View.OnClickListener() {

            @Override

            public void onClick(View view) {

                comentario = comentarios.getEditableText().toString();

                if(!comentario.equals("")){

                    tasksModal.dismiss(); //dismiss here

                    calendario.retrofitDoneTasks(tarefaId, comentario, data, hora, yorn, tarefaRealizadaId);

                }

                else{

                    Toast.makeText(sContext,"Por favor digite um comentário.", Toast.LENGTH_SHORT).show();

                }

            }

        });


        tasksModal.show();

    }

});


Button notDone = (Button) listItem.findViewById(R.id.tasksNotDone);

notDone.setOnClickListener(new View.OnClickListener() {

    @Override

    public void onClick(View view) {

        comentarios.setText("");

        yorn = false;

        tarefaId = presenteTask.getTaskId();

        data = presenteTask.getDataTask();

        hora = String.valueOf(presenteTask.getTimeStart());


        tasksModal.findViewById(R.id.btnSend).setOnClickListener(new View.OnClickListener() {

            @Override

            public void onClick(View view) {

                comentario = comentarios.getEditableText().toString();

                if(comentario.equals("")){

                    Toast.makeText(sContext,"Por favor digite um comentário.", Toast.LENGTH_SHORT).show();

                }

                else{

                    tasksModal.dismiss();

                    calendario.retrofitDoneTasks(tarefaId, comentario, data, hora, yorn, tarefaRealizadaId);

                }

            }

        });


        tasksModal.show();

    }

});




查看完整回答
反對 回復(fù) 2024-01-05
  • 1 回答
  • 0 關(guān)注
  • 164 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號