- 浏览: 365917 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
驭乐MJ:
你好,我卸载rar后,按命令执行安装unrar或者是p7zip ...
Ubuntu rar 乱码问题 -
郭建雄:
不错,受用了,谢谢你的分享 !
java线程中的interrupt,isInterrupt,interrupted方法 -
zuosheng:
...
用ViewFlipper实现各种切换动画 -
lxtkong-029:
原来一直不是很清楚,看来你的文章明白了,太感谢了!
java线程中的interrupt,isInterrupt,interrupted方法 -
ihopethatwell:
嗯,看到了,要在项目中添加jni
Ubuntu 10.04安装android NDK
1. 在Notification中显示ProgressBar,效果图:
2. 实现步骤:
(1)在res/layout/目录中定义notification.xml文件,内容如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android = "http://schemas.android.com/apk/res/android"
android:layout_width = "fill_parent"
android:layout_height = "fill_parent"
android:gravity = "center_vertical"
>
<ImageView
android:id = "@+id/image"
android:layout_width = "wrap_content"
android:layout_height = "fill_parent"
/>
<ProgressBar
android:id = "@+id/progressBar"
android:layout_width = "180dip"
android:layout_height = "wrap_content"
style = "?android:attr/progressBarStyleHorizontal"
android:layout_gravity = "center_vertical"
/>
<TextView
android:id = "@+id/tip"
android:layout_width = "wrap_content"
android:layout_height = "wrap_content"
android:textSize = "16px"
android:textColor = "#FF0000"
/>
</LinearLayout>
(2)主Activity实现:
public class NotificationActivity extends Activity {
private NotificationManager mNotificationManager;
private RemoteViews mRemoteViews;
private Intent mIntent;
private PendingIntent mPendingIntent;
private int mProgress = 0;
private Notification notification = new Notification();
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
/**
* Activity主布局,布局中存在一个Button,单击Button后启动多线程并向StatusBar发送Notification提醒。
*/
setContentView(R.layout.main);
/**
* 获取Notification管理器。
*/
mNotificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
/**
* 利用notification.xml文件创建RemoteView对象。
*/
mRemoteViews = new RemoteViews(getPackageName(), R.layout.notification);
/**
* 单击Notification时发出的Intent消息。
*/
mIntent = new Intent(NotificationActivity.this, 自定义Activity.class);
mPendingIntent = PendingIntent.getActivity(NotificationActivity.this, 0, mIntent, 0);
/**
* 获取Button对象,设置单击事件,单击后启动多线程向StatusBar发送Notification提醒。
*/
Button sendNotification = (Button) findViewById(R.id.sendNotification);
sendNotification.setOnClickListener(new OnClickListener() {
public void onClick(View view) {
/**
* 设置Notification的Icon图标。
*/
notification.icon = R.drawable.icon;
mRemoteViews.setImageViewResource(R.id.image, R.drawable.icon);
/**
* 启动多线程更新Notification提醒。
*/
new Thread(new Runnable() {
public void run() {
for (int i = 0; i < 20; i++) {
mProgress = (i + 1) * 5;
try {
if (i < 19) {
Thread.sleep(1000);
} else {
Thread.currentThread().interrupt();
}
} catch (InterruptedException e) {
e.printStackTrace();
}
Message message = new Message();
mHandler.sendMessage(message);
}
}
}).start();
}
});
}
private Handler mHandler = new Handler() {
public void handleMessage(Message message) {
/**
* 设置RemoteView组件中进度条的进度值。
*/
mRemoteViews.setProgressBar(R.id.progressBar, 100, mProgress, false);
mRemoteViews.setTextViewText(R.id.tip, "Download:" + mProgress + "%");
/**
* 给Notification设置布局。
*/
notification.contentView = mRemoteViews;
/**
* 给Notification设置Intent,单击Notification会发出这个Intent。
*/
notification.contentIntent = mPendingIntent;
/**
* 发送Notification提醒。
*/
mNotificationManager.notify(0, notification);
super.handleMessage(message);
}
};
} 转自:http://blog.csdn.net/mayingcai1987/archive/2011/03/06/6226685.aspx
发表评论
-
通过FutureTask设置超时,用于请求网络,执行任何异步超时任务
2013-10-10 15:53 0public class TestConnectTimeOu ... -
使用Eclipse调试Android Native Application
2013-07-08 21:31 0由于最近需要调试C++程序,以后都是暴力调试的,暴力调 ... -
Android新版NDK环境配置(免Cygwin)
2013-07-05 08:41 0前言:Android NDK r7及以上的版本已经集成 ... -
scroller 滚动效果
2013-04-25 14:22 0package com.testalaph; i ... -
点9 ondraw bitmap
2013-04-17 14:26 0private void init(Context ... -
点9 ondraw bitmap
2013-04-17 14:20 0点9图片ondraw画: private void ... -
通过activityGroup动态管理activity
2013-01-20 15:54 0// @Override // protected v ... -
scroller text view 滚动文字
2012-12-08 10:18 0package com.sc; import an ... -
android 截屏
2012-11-05 14:16 0//截屏2 private Bitmap jieping2 ... -
Android下Dialog及Activity屏蔽Home键详解
2011-12-13 11:53 0屏蔽其他键,重写onKeyDown Java代码 ... -
clipRect 介绍
2011-12-02 14:13 6729android的clip有以下两点疑问: Clip(剪切)的 ... -
android知识整理
2011-11-03 10:06 11. android单实例运行方 ... -
Android 使用junit测试
2011-08-05 16:18 954使用方式也非常的简单,只需要在AndroidManifest ... -
Android开发:调试工具集
2011-08-05 15:07 18341. 查看当前堆栈1) 功能:在程序中加入代码,使可以在log ... -
Android中attr自定义属性详解
2011-07-12 16:23 38788<LinearLayout xmlns:android= ... -
Drawable Mutations(Android Drawable 深入分析)
2011-07-11 11:08 1658Android's drawables对编写 ... -
检查系统是否安装某app
2011-07-11 10:45 965/** * Indicates whether th ... -
ImageView的scaletype属性
2011-07-07 13:21 862ImageView的属性android:scaleType ... -
Android UI --- 设置ProgressBar的颜色
2011-07-04 14:26 1286基本原理是在drawable目录中建立一个xml文件,描述一下 ... -
关于android的ListView优化
2011-06-24 16:58 11241.去除ListView的黑色间隔线 vie ...
相关推荐
而ProgressBar则是一个可视组件,用于显示进度,常见于加载数据或者执行长时间操作时。当涉及到`android-notification-progressbar`,我们关注的是如何在通知中嵌入一个进度条,实时反映后台任务的进度。 首先,...
`Notification`则是Android系统提供的一个强大功能,它可以在状态栏中显示消息,并允许用户在任何时候与其交互。创建`Notification`需要`NotificationChannel`(Android O及以上版本)和`NotificationCompat.Builder...
在AsyncTask的`onPreExecute()`方法中显示进度条,在`onProgressUpdate()`更新进度,在`onPostExecute()`方法中隐藏进度条。 六、Infinite ProgressBar(无限循环进度条) 通过在代码中设置`ProgressBar....
`ProgressBar`组件在Android中用于显示进度,它可以是水平的、垂直的或者是圆形的。当应用执行耗时任务,如下载、上传或解压文件时,`ProgressBar`能够提供用户体验反馈。以下是如何在布局文件中添加一个水平进度条...
使用IntentService处理长时间运行的任务时,可以在Service中创建一个Notification,其中包含一个RemoteViews来显示一个正在运行的ProgressBar。 7. **CircularProgressBar(圆环形进度条)**: 除了默认的水平条...
8. **ProgressBar与Notification**:在某些情况下,例如后台服务执行任务时,进度条也可以在通知栏中显示,这涉及到Notification的构建和更新。 这个源码项目将帮助学习者了解如何在实际应用中集成和控制...
在Android开发中,`Notification`是一种非常重要的组件,它用于向用户展示应用在后台运行时的重要信息或状态更新。在标题“带进度条,以及动态状态图标的Notification”中,我们关注的重点是如何在`Notification`中...
- `Notification`: 在状态栏显示消息,提醒用户有新事件。 8. **滑动抽屉组件** - `DrawerLayout`: 实现侧滑菜单,常用于导航栏。 9. **自定义组件** - 学习如何根据需求创建自定义视图,扩展Android UI的可能...
在Android开发中,Notification是一种非常重要的用户界面组件,它用于在状态栏中向用户显示信息,即使应用在后台运行也能保持与用户的互动。本主题主要关注如何自定义Notification,特别是添加进度条以及实现按钮...
接下来,为了在另一个Activity(ActivityB)中显示进度条,我们需要监听下载服务的状态。可以通过绑定到服务,利用`DownloadBinder`获取下载进度,然后更新UI上的ProgressBar。此外,ActivityB还可以通过注册...
1. **ProgressBar组件**:Android中的ProgressBar是一个视图组件,分为两种类型:indeterminate(不确定进度)和determinate(确定进度)。前者通常用于表示操作的不可预知持续时间,如加载动画;后者则用于显示具体...
在Android开发中,Notification是一个非常重要的组件,用于在状态栏显示提醒信息,即使应用不在前台运行也能触达用户。在某些场景下,如文件下载、上传或后台任务执行,我们可能需要在Notification中添加一个进度条...
1. **ListView的使用**:ListView是Android中用于显示大量数据的视图组件,通过Adapter来绑定数据源,它会自动处理滚动和复用Item视图,以提高性能。在创建ListView时,需要定义一个布局文件作为Item模板,并在...
在onPreExecute()方法中显示进度条,在onProgressUpdate()方法中更新进度,在onPostExecute()方法中隐藏进度条。 6. **Loader API**:在Android Framework中,Loader API设计用于异步加载数据,同时允许在配置更改...
TextView是Android中最常用的文本显示组件,可以显示单行或多行文本,支持文字样式、链接、对齐方式、换行等特性。通过设置text属性,可以动态改变显示的文本。 7. **Menu**: Android菜单通常在Activity的选项栏...
在Android开发中,ProgressDialog是一个非常重要的组件,它用于在用户等待长时间操作完成时显示一个进度指示器,给予用户反馈,防止界面无响应而产生不愉快的用户体验。在本"Android ProgressDialog Demo"中,我们将...
2. **ProgressBar**: 这是一个可自定义的视图,可以在布局文件中作为独立组件使用,或者嵌入到其他视图中。它可以是indeterminate或determinate,后者可以设置最大值和当前值。 3. **AsyncTask**: 这是Android提供...
1. **ListView组件**:ListView是Android中的一个视图组件,用于展示大量数据的列表形式。它可以通过Adapter来动态加载数据,支持滚动和多项选择等特性,非常适合用来展示多任务下载列表。 2. **Adapter**:Adapter...
**2.7.2 NotificationBar** - 通知栏,用于显示系统或应用级别的通知。 #### 2.8 对话框 **2.8.1 ConfirmDialog** - 确认对话框,用于获取用户确认。 **2.8.2 Dialog** - 通用对话框,可用于多种场景。 #### 2.9 ...
- ProgressBar、ProgressDialog进度条组件的使用。 - AlertDialog对话框的不同实现方式以及自定义实现。 11. Activity的使用和跳转 - Activity的基本配置和生命周期理解。 - Activity之间的跳转和信息传递。 -...