0

ProgressDialog的没有显示。

这是代码:

et.setOnEditorActionListener(new TextView.OnEditorActionListener() {
        public boolean onEditorAction(TextView v, int actionId,
                KeyEvent event) {
            if (actionId == EditorInfo.IME_ACTION_SEARCH) {
                performSearch();
                return true;
            }
            return false;
        }

        private void performSearch() {
            ProgressDialog pd = null;
            pd = ProgressDialog.show(MainActivity.this, "Buscando...",
                    "Buscando " + et.getText() + " en GuiaColor");
            lv.setAdapter(new SearchAdapter(MainActivity.this, handler
                    .search(et.getText().toString(), 20)));
            pd.dismiss();
        }
    });

它工作得很好,唯一的问题是对话框没有出现。

4

1 回答 1

0

尝试以下代码在后台线程中进行查询,并在任务完成后关闭对话框:

    private void performSearch() {
        final ProgressDialog dialog = ProgressDialog.show(MainActivity.this, "Buscando...", "Buscando " + et.getText() + " en GuiaColor");

        new Thread() {
            public void run() {
                lv.setAdapter(new SearchAdapter(MainActivity.this, handler.search(et.getText().toString(), 20)));
                dialog.dismiss();
            }
        }.start();
    }
于 2012-07-31T15:54:13.073 回答