标签: progressdialog

在产生和运行子进程时显示进度

我需要在生成和运行子进程时显示一些进度条或其他东西.我怎么能用python做到这一点?

import subprocess

cmd = ['python','wait.py']
p = subprocess.Popen(cmd, bufsize=1024,stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
p.stdin.close()
outputmessage = p.stdout.read() #This will print the standard output from the spawned process
message = p.stderr.read()
Run Code Online (Sandbox Code Playgroud)

我可以使用这段代码生成子进程,但是我需要在每秒传递时打印出一些东西.

python subprocess progressdialog

0
推荐指数
1
解决办法
2238
查看次数

如何设置渐进式对话的时间?

我想在我的Android应用程序中为ProgressDialog设置一个时间(例如5秒).我怎样才能做到这一点?

android progressdialog

0
推荐指数
1
解决办法
511
查看次数

为什么我的进度条不能正常增加?

我试图在收到的广播上增加我的进度条,但从myProgressDialog.incrementProgressBy(increment);我的观点来看代码没有任何影响.我试过把命令放在不同的地方,但我仍然看不到任何效果.

这是我的代码的样子.

public static final int max = 180;
public final static int increment = (1/180);

  @Override
   public void onCreate(Bundle savedInstanceState) {
            ...
        i = new Intent();
    i.setAction(ITEM_CREATED);
    registerReceiver(myBroadcastReceiver, new IntentFilter(ITEM_CREATED));              
        findFeeds = new Runnable(){
           @Override
           public void run() 
            {
              getFeedObjects();
            }
           };
           beginThread();
        } 

 public static Context getAppContext() {
    return context;
}

private void beginThread()
{
    switch (checkConnectionState(OffsideLiteActivity.this))
    {
        case 0:
        thread =  new Thread(null, findItems, "DoingInBackground");
        thread.start();
        myProgressDialog = new ProgressDialog(this);
            myProgressDialog.setCancelable(true);
            myProgressDialog.setMessage("Loading...");
            myProgressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
            myProgressDialog.setProgress(0);
            myProgressDialog.setMax(max); …
Run Code Online (Sandbox Code Playgroud)

multithreading android progressdialog

0
推荐指数
1
解决办法
2767
查看次数

在AsyncTask中更改ProgressDialog的消息

我有一个在AsyncTask中运行的ProgressDialog.我试图实现,只要缓冲区的长度更大,然后说10000,来自ProgressDialog的消息就会发生变化.

有人可以帮帮我吗,这可能吗?先感谢您.

@Override
    protected void onProgressUpdate(Integer... progUpdate) { 
         if (progUpdate[0] >= 10000){ 
            progress.setMessage("Informatie wordt opgehaald...."); 
        } 
     } 
Run Code Online (Sandbox Code Playgroud)

缓冲区是在AsyncTask doInBackGround中创建的:

try { 
        HttpResponse response = httpClient.execute(request); 

        System.out.println("Response: " + response.getEntity().getContentLength());

        /******* READ CONTENT IN BUFFER *******/
        InputStream inputStreamActivity = response.getEntity().getContent();

        BufferedReader reader = new BufferedReader(new InputStreamReader(inputStreamActivity));
        StringBuilder sb = new StringBuilder();
        String line = null;
        int count = sb.length();

        while ((line = reader.readLine()) != null) {
            sb.append(line);
             publishProgress(sb.length());

        }

        /******* CLOSE CONNECTION AND STREAM *******/
        System.out.println(sb);
        inputStreamActivity.close();
        kpn = sb.toString();

        httpClient.getConnectionManager().shutdown(); …
Run Code Online (Sandbox Code Playgroud)

android progressdialog android-asynctask

0
推荐指数
1
解决办法
8440
查看次数

显示进度对话框,直到加载新活动

我有一个进度对话框,我试图在用户点击按钮启动新活动时显示.微调器应显示在当前页面上,直到出现其他活动.(活动有时需要4-5秒才能启动,没有微调器,它只显示一个看起来已冻结的按下按钮)

这就是我所拥有的,它只有在我移除时才有效hideProgressDialog();,但是当我回到之前的活动时,旋转器仍然会在那里.

我究竟做错了什么 ?

进度对话框:

    public void showProgressDialog(Context context) {
    if(this.progressDialog != null) {
        this.progressDialog.dismiss();
        this.progressDialog = null;
    }
    this.progressDialog = ProgressDialog.show(context, "", "Chargement en cours, veuillez patienter");
}    

public void hideProgressDialog() {
    if(this.progressDialog != null) {
        this.progressDialog.dismiss();
        this.progressDialog = null;
    }
}
Run Code Online (Sandbox Code Playgroud)

功能:

public void startActivity(Context context, Class<? extends Activity> activityClass) {
    try {
        showProgressDialog(context);
            Intent intent = new Intent(this, activityClass);
            intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
            intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);         
            startActivity(intent);    
            hideProgressDialog();
    }
    catch(Throwable e) {
        e.printStackTrace();
    }
}  
Run Code Online (Sandbox Code Playgroud)

单击按钮的示例,此处调用函数以显示微调器:

    @Override
public void onClick(View …
Run Code Online (Sandbox Code Playgroud)

java android progressdialog

0
推荐指数
1
解决办法
3193
查看次数

ProgressDialog使用AsyncTask生成构造函数未定义错误

public class async extends AsyncTask<String, Integer, String>{
ProgressDialog prog;
@Override
protected void onPreExecute() {

    super.onPreExecute();
    prog=new ProgressDialog(async.this);//This is chowing error 
    prog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
    prog.setMax(100);
    prog.show();

}

    @Override
    protected String doInBackground(String... params) {
        for (int i = 0; i < 10; i++) {
        publishProgress(5);
            try {
                Thread.sleep(100);
            } catch (InterruptedException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
        return null;
    }

@Override
protected void onPostExecute(String result) {

    super.onPostExecute(result);
    prog.dismiss();
}
@Override
protected void onProgressUpdate(Integer... values) {
    prog.setProgress(values[0]);
    super.onProgressUpdate(values);
}
}
Run Code Online (Sandbox Code Playgroud)

上面的代码产生错误: …

android progressdialog android-asynctask

0
推荐指数
1
解决办法
3376
查看次数

如何在Android ProgressDialog中显示SecondaryProgress?

我需要在Android上显示ProgressDialog的次要进度,但它只显示对话框中的第一个进度条.

这是我使用的代码:

progress = new ProgressDialog(this);
    progress.setIndeterminate(false);
    progress.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
    progress.setProgress(25);

    progress.setSecondaryProgress(10);

    progress.show();
Run Code Online (Sandbox Code Playgroud)

java android progress progressdialog

0
推荐指数
1
解决办法
1万
查看次数

Android - 进度对话框在更改消息时崩溃

我是Android的新手,我正在练习创建一个进度对话框.我想每隔几秒更改一次对话框中的消息,但是当我更改消息时,我的应用程序崩溃了.我有什么想法可能做错了吗?

private void progressDialogTest(final ArrayList<String> messages)
    {
        AsyncTask<Void, Void, Void> task = new AsyncTask<Void, Void, Void>() 
        {
            private ProgressDialog progressDialog;

            @Override
            protected void onPreExecute() 
            {
                progressDialog = new ProgressDialog(MainActivity.this);
                progressDialog.setTitle("Progress Dialog");
                progressDialog.show();
            }

            @Override
            protected Void doInBackground(Void... arg0) 
            {
                try 
                {
                    for(int i=0; i<messages.size(); i++)
                    {
/******** APPLICATION SEEMS TO CRASH AT LINE BELOW ********/
                        progressDialog.setMessage(messages.get(i));
                        Thread.sleep(3000);
                    }
                } 
                catch (InterruptedException e) 
                {
                    e.printStackTrace();
                }
                return null;
            }

            @Override
            protected void onPostExecute(Void result) 
            {
                progressDialog.dismiss();
            }
        };
        task.execute((Void[])null);
    }
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

android progressdialog android-dialog

0
推荐指数
1
解决办法
1709
查看次数

将ProgressDialog添加为异步任务会降低性能

这是我的登录代码.

public void Login_Click(View view) {
HashMap<String, String> op_Config = XMLParser
        .parse(LoginActivity.this);
}
Run Code Online (Sandbox Code Playgroud)

完成执行大约需要4秒.所以我添加了这样的进度对话框.

public void Login_Click(View view) {
 new IsLogedIn().execute();
}

class IsLogedIn extends AsyncTask<String, String, String> 
{   
@Override
protected void onPreExecute() {
    super.onPreExecute();
    showDialog(progress_bar_type);
}   
@Override
protected String doInBackground(String... value) {
    try
    {   
        HashMap<String,String> op_Config = XMLParser.parse(LoginActivity.this);
        finish();
        Intent intent=new Intent(LoginActivity.this,MainMenuActivity.class);
        startActivity(intent);  
    }
    catch (Exception e) {
    }               
}
@Override
protected void onPostExecute(String file_url) {
    dismissDialog(progress_bar_type);       
}
}
Run Code Online (Sandbox Code Playgroud)

但现在需要超过1分钟才能完成.

android progressdialog

0
推荐指数
1
解决办法
214
查看次数

通过应用程序显示ProgressDialogs的最佳实践?

在我的应用程序中,我想展示ProgressDialog某些事件(AsyncTasks例如在期间).我从不想ProgressDialogs同时展示多个.

这样做的最佳和最有效的方法是什么?我当前的代码如下所示:

public class ProgressDialogHelper {
    private static ProgressDialog progressDialog;

    public static void showProgressDialog(Context c) {
        if (progressDialog == null) {
            progressDialog = ProgressDialog.show(c, null, null);
            progressDialog.setContentView(R.layout.progress_bar);
        }
    }

    public static void dismissProgressDialog() {
        if (progressDialog != null) {
            progressDialog.dismiss();
            progressDialog = null;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我正在从我的其他类中调用这些方法来显示/关闭ProgressDialog.

这被认为是好习惯吗?如果没有,我该怎么做?

java android progressdialog

0
推荐指数
1
解决办法
1367
查看次数