`
wang_peng1
  • 浏览: 3943001 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

AsyncTask中使用ProgressDialog以及activity之间传递对象

 
阅读更多
public class MyTask extends AsyncTask<Void, Void, Void> { 
 
    private volatile boolean running = true; 
    private final ProgressDialog progressDialog; 
 
    public MyTask(Context ctx) { 
        progressDialog = gimmeOne(ctx); 
 
        progressDialog.setCancelable(true); 
        progressDialog.setOnCancelListener(new OnCancelListener() { 
            @Override 
            public void onCancel(DialogInterface dialog) { 
                // actually could set running = false; right here, but I'll 
                // stick to contract. 
                cancel(true); 
            } 
        }); 
 
    } 
 
    @Override 
    protected void onPreExecute() { 
        progressDialog.show(); 
    } 
 
    @Override 
    protected void onCancelled() { 
        running = false; 
    } 
 
    @Override 
    protected Void doInBackground(Void... params) { 
 
        while (running) { 
            // does the hard work 
        } 
        return null; 
    } 
 
    // ... 
 
} 
这两天要用一个对象的传递始终找不到好的方法,后来在传递bitMap时这个对象时有了点启发
可以讲一个类扩展为implement Serializable interface 
//传递: 
   intent.putExtra("MyClass", obj);   
 
// to retrieve object in second Activity 
getIntent().getSerializableExtra("MyClass"); 
分享到:
评论

相关推荐

    Android 屏幕旋转 处理 AsyncTask 和 ProgressDialog 的最佳方案

    尤其是当程序正在进行后台任务(如AsyncTask)或者显示ProgressDialog时,屏幕旋转会触发Activity的生命周期重置,使得原有状态无法保留。本篇文章将深入探讨如何在Android中优雅地处理屏幕旋转,确保AsyncTask和...

    ProgressDialog Demo

    在Android应用开发中,`ProgressDialog`是一个非常...通过实践这个Demo,你可以掌握`ProgressDialog`的使用方法,包括创建、设置样式、更新进度以及正确关闭对话框。这对于任何Android开发者来说都是必不可少的技能。

    android:AsyncTask实现异步处理任务.pdf

    以下是一个简单的示例,展示了如何使用AsyncTask从网络获取网页源代码并在TextView中显示: ```java public class MainActivity extends Activity { private TextView textView; @Override protected void ...

    异步任务下载图片

    在Android开发中,异步任务(AsyncTask)是一种常见的处理耗时操作的方式,尤其是在用户界面(UI)线程中避免阻塞,确保用户体验流畅。"异步任务下载图片"这个主题,主要涉及到如何利用AsyncTask从网络下载图片,并...

    Android入门到精通知识总结.pdf

    在Activity间传递数据可以通过Intent的putExtra()和getExtra()方法实现,可以传递基本数据类型、Parcelable对象(如Parcelable或Serializable的子类)和Bundle。 ### 4. **处理Back按键** `onBackPressed()`方法...

    android教程之使用asynctask在后台运行耗时任务

    这里调用了 `DataOper.GetAllPtsFromNet(mDBHelper, pdialog)` 进行实际的下载操作,同时传递了进度对话框对象,以便在下载过程中更新进度。 - `onCancelled()` 当用户取消任务时,执行清理工作。 - `onPostExecute...

    更新UI android

    理解BroadcastReceiver、Service和线程的使用,以及如何在它们之间安全地传递数据和更新UI,对于构建高性能、用户体验良好的应用程序至关重要。通过实践和不断优化,开发者可以更好地掌握这些技巧,提高应用的质量和...

    Android使用AsyncTask下载图片并显示进度条功能

    在`AsyncTaskActivity2`中,我们首先初始化UI元素,包括一个下载按钮(`btnDown`)和一个用于显示图片的`ImageView`(`ivImage`)。我们还创建了一个`ProgressDialog`对象(`dialog`)来显示下载进度。 当用户点击...

    安卓实现学生管理系统

    7. **Intent和Activity间通信**:在安卓中,Activity是应用的基本单元,Intent用于在Activity之间传递数据和启动新的Activity。在学生管理系统中,可能需要通过Intent在不同的Activity之间跳转,比如从主界面跳转到...

    Android入门开发实例--Dialog 对话框应用

    不过,由于Android 5.0后推荐使用ProgressBar替代ProgressDialog,因此在新的项目中,你应该优先考虑使用 ProgressBar 配合 AsyncTask 或者其他异步处理机制来显示进度。 除了默认的Dialog样式,你还可以自定义...

    android版本更新代码,一对话框的形式显示出来的 有下载进度条

    可以使用`AsyncTask`的`doInBackground()`方法来执行下载任务,然后在`publishProgress()`中传递进度信息: ```java new AsyncTask, Integer, Void&gt;() { @Override protected Void doInBackground(Void... voids)...

    Xamarin.Android 非UI线程更新UI

    5. **Android.App.ProgressDialog**: 当需要在后台执行耗时操作并希望向用户显示进度时,可以使用ProgressDialog。同样,需要确保在UI线程中显示和取消这个对话框。 6. **Java.Util.concurrent**: Java的并发库提供...

    Android progress前台运算.rar

    2. **ProgressDialog**:在Android开发中,ProgressDialog已经过时,推荐使用AlertDialog配合Progress Bar或者使用自定义的进度视图。它可以显示一个标题,一个可选的消息,并包含一个取消按钮。用户可以通过点击...

    Android progress前台运算-IT计算机-毕业设计.zip

    8. **Lifecycle-Aware Components**: 使用ViewModel和LiveData,开发者可以确保即使在屏幕旋转或其他配置改变时,进度信息也能正确地在Activity或Fragment之间保持。 9. **UI更新的最佳实践**: 在更新进度条时,...

    Android基于GeolocationAPI的基站定位

    在这个例子中,可以考虑使用`AsyncTask`或者其他异步处理方式,以确保用户界面的流畅性。 综上所述,Android基于GeolocationAPI的基站定位涉及到网络通信、JSON解析、UI更新以及权限管理等多个方面,需要开发者对...

    service后台下载

    在Service中,通过`bindService()`与Activity建立连接,然后通过Binder将下载进度传递到Activity,更新ProgressDialog的进度值。 4. **Notification**:为了在通知栏显示下载状态,我们需要使用`...

    Android 远程登录含有loading登录效果源码.rar

    Android中可以使用Gson或Jackson库来解析JSON,将数据转换为Java对象。 4. **ProgressDialog/ProgressBar**:"loading登录效果"通常指的是在用户等待登录结果时显示的进度条或者加载对话框。Android提供了...

    Android应用源码之仿360MyDownload.rar

    - **接口回调**: 在Activity和下载服务之间,可能通过接口回调传递下载进度和状态信息。 7. **服务(Service)** - **IntentService**: 为了在后台持续运行下载任务,项目可能使用了IntentService,它会在完成所有...

    安卓开发-Android快速框架+多线程下载框架的技术(Android + Afinal+gson).zip.zip

    综上所述,这份资料涵盖了Android开发中的一些核心技术和实践,包括使用Afinal简化数据库和网络操作,利用多线程下载提高用户体验,以及Gson库在数据交换中的作用。通过学习和应用这些知识,开发者可以构建更高效、...

Global site tag (gtag.js) - Google Analytics