java - 列表 Activity 和对话框

标签 java android dialog listactivity

我有一个 ListActivity,需要通过Thread 处理大量数据。我想在后台中完成工作时显示一个Dialog。但是,在 View 加载完成之前,Dialog 不会显示。我在常规 activity 上使用这种方法并且它有效(Dialog 弹出,worker 启动,worker 完成,Dialog 关闭)。工作完成后,将向处理程序发送一条消息,以加载 View 并关闭对话框

这是我的代码:

@Override
public void onCreate(Bundle icicle) {

    super.onCreate(icicle); 
    initViewProperties();
    dialogCode = 0;
    showDialog(dialogCode);

}

@Override
protected Dialog onCreateDialog(int id) {

    int resID = getResources().getIdentifier(getCfrFile(), "raw", getPackageName());        
    progDialog = new ProgressDialog(this);

    switch (dialogCode) {
        case 0:
            progDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);  
            progDialog.setMessage(getCurrentTitle());
            break;
        case 1:
            progDialog.setMessage("Loading CFR");
            break;

        default:
            break;
    }       

    try {
        // do the work here
        xmlListRowFactoryHelper = new AcmListViewFactoryHelper(handler, resID, this, xpathBuilder(false), "title") ;
        xmlListRowFactoryHelper.run();

    } catch (Exception e) {

        e.printStackTrace();
    }

    return progDialog;

}   

final Handler handler = new Handler() {
    @Override
    public void handleMessage(Message msg) {

        int total = msg.getData().getInt("total");            

        progDialog.setProgress(total);

        if (total <= 0){

            xmlListRowFactoryHelper.setState(AcmTableRowFactoryHelper.DONE);
            // load the view here
            loadListView();    
        }
    }
}

最佳答案

关于java - 列表 Activity 和对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8624439/

相关文章:

java - 从我的 ArrayList 打印一个随机字符串到控制台

java - 如何在 LinearLayout 中显示在其他布局上播放的 TextView?

java - 如何连接两个列表以创建第三个列表?

android - Xamarin 安卓 : using StartActivityForResult(); resultCode in OnActivityResult is always "Canceled"

java - 无法使用 kaaes Spotify Web api 获取播放列表的轨道

android - getOwnerActivity 在自定义对话框中返回 null

java - Eclipse 不解析 javax.media.opengl.GL3 导入

java - 如何在android中实现手绘图片裁剪?

.net - 如何在 Visual C++ .net 中将一个项目从一个列表框转移到另一个

java - JOptionPane - 显示我自己的 JDialog 子类的对话框