当前位置:  编程技术>移动开发
本页文章导读:
    ▪基于时间的提示AlarmManager和Service        基于时间的提醒AlarmManager和Service 作为最贴身的电子移动设备,手机上的提醒功能无疑是最实用的了.Android中Notification简单易用,接下来就是对两种常用用法的介绍. 基于时间的提醒:Notification本.........
    ▪ 怎么在activity中动态的设置TextView上字体的颜色        如何在activity中动态的设置TextView上字体的颜色 最近写程序就遇到了这么个难题,在TextView 上,正常字体颜色显示是黑色。如果在activity中动态的改变字体颜色(预期目标是字体颜色变成红.........
    ▪ 读取封存plist文件       读取保存plist文件 @implementation SettingUtil + (NSString *)dataFilePath{     NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);     NSString *documentsDirectory = [paths objectAtIndex:0]; .........

[1]基于时间的提示AlarmManager和Service
    来源: 互联网  发布时间: 2014-02-18
基于时间的提醒AlarmManager和Service

作为最贴身的电子移动设备,手机上的提醒功能无疑是最实用的了.Android中Notification简单易用,接下来就是对两种常用用法的介绍.

基于时间的提醒:
Notification本身没有管理时间的能力,所以我们用AlarmManager来触发Notification.

package test.TestNotification;
import android.app.Activity;
import android.app.AlarmManager;
import android.app.PendingIntent;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
/**
* 用AlarmManager来触发Notification
*/
public class TestNotification extends Activity
{
/**
* 初始化
*/
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//得到使用AlarmManager的权限
AlarmManager alarms=(AlarmManager)getSystemService(Context.ALARM_SERVICE);
//AlarmManager要做的事情,打开NotificationService(这是个自定义Service稍后会补充)
Intent intent=new Intent(this,NotificationService.class);
PendingIntent pendingIntent=PendingIntent.getService(this,0,intent,PendingIntent.FLAG_ONE_SHOT);
//设定时间,将System.currentTimeMillis()换成你需要的时间即可,这里是立即触发
alarms.set(AlarmManager.RTC_WAKEUP,System.currentTimeMillis(),pendingIntent);
}
}

在前面我们使用了Service来触发Notification,所以接下来自定义一个Service.

package test.TestNotification;
import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.app.Service;
import android.content.Context;
import android.content.Intent;
import android.os.IBinder;
/**
* 自定义Service,在其中启动Notification
*/
public class NotificationService extends Service
{
/**
* 继承Service必须实现的方法,这里用不到
*/
public IBinder onBind(Intent intent)
{
return null;
}
/**
* 初始化
*/
public void onCreate()
{
//以下是对Notification的各种参数设定
int icon=R.drawable.icon;
String tickerText=”这是一个提醒”;
long when=(System.currentTimeMillis());
Notification nfc=new Notification(icon,tickerText,when);
Context cxt=getApplicationContext();
String expandedTitle=”基于时间的提醒来了”;
String expandedText=”其实没什么重要的事”;
//intent是非常重要的参数,用来启动你实际想做的事情,设为null后点击状态栏上的Notification就没有任何反应了.
Intent intent=null;
PendingIntent nfcIntent=PendingIntent.getActivity(cxt,0,intent,0);
nfc.setLatestEventInfo(cxt,expandedTitle,expandedText,nfcIntent);
//发送Notification
NotificationManager nfcManager=(NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE);
nfcManager.notify(1,nfc);
}
}

这样,一个简单的定时提醒就完成了.
只要在应用中获得正确的时间,通过AlarmManager在那个时间点触发Service中的Notification,再用Notification启动相应的应用即可.
注意:AndroidManifest.xml中要添加上用到的NotificationService.(以上代码在Android2.2中测试通过)

转:http://www.freeideastudio.com.cn/wordpress/?p=329

 


    
[2] 怎么在activity中动态的设置TextView上字体的颜色
    来源: 互联网  发布时间: 2014-02-18
如何在activity中动态的设置TextView上字体的颜色
最近写程序就遇到了这么个难题,在TextView 上,正常字体颜色显示是黑色。如果在activity中动态的改变字体颜色(预期目标是字体颜色变成红色),无论如何都是灰显,简单代码如下所示。郁闷了好些时日。
private TextView mTextDisp;
mTextDisp = (TextView) findViewById(R.id.textDisp_mian);
mTextDisp.setTextColor(R.color.red);(使用color.xml文件中的颜色值)
这样写是怎么也变不成红色的,而且程序不报错,不知道朋友们有没有试过。而且debug所走的分支也是正确的。
我就单独写了一个Demo来测试,结果还是灰显。
有的朋友要说,是不是red的颜色值写错了。不是,color中的颜色值配置对着呢。
其实,答案很简单,就错在mTextDisp.setTextColor(R.color.red);这行代码上。
首先,在xml中不要写默认的字体颜色值,即android:textColor="xxx"
其次,在activity中mTextDisp.setTextColor(context.getResources().getColor(R.color.red));(使用color.xml文件中的颜色值)
这样就OK了。或者直接使用Color类中的值:mTextDisp.setTextColor(Color.RED);(使用系统自带的颜色类Color类中的颜色值)。
1 楼 Jack22 2011-07-26  
顶一个,学习了
2 楼 蒋启云 2011-07-28  
谢谢了,学习了
3 楼 Jack22 2011-08-03  
顶, 牛人!

    
[3] 读取封存plist文件
    来源: 互联网  发布时间: 2014-02-18
读取保存plist文件

@implementation SettingUtil

+ (NSString *)dataFilePath{
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *documentsDirectory = [paths objectAtIndex:0];
    return [documentsDirectory stringByAppendingPathComponent:@"config.plist"];
}

+(NSMutableDictionary *)loadFromFile {
    NSString *error = nil;
    NSPropertyListFormat format;
    NSMutableDictionary *dict = nil;
    NSString *filePath = [self dataFilePath];
    if (![[NSFileManager defaultManager] fileExistsAtPath:filePath]) {
        filePath = [[NSBundle mainBundle] pathForResource:@"config" ofType:@"plist"];
    }
    NSData *plistXML = [[NSFileManager defaultManager] contentsAtPath:filePath];
    dict = (NSMutableDictionary *)[NSPropertyListSerialization propertyListFromData:plistXML
                                                                   mutabilityOption:NSPropertyListMutableContainersAndLeaves
                                                                             format:&format
                                                                   errorDescription:&error];
    return dict;
}

+(BOOL)saveToFile:(NSMutableDictionary *)withData {
    NSString *error = nil;
    NSData    *plistData = [NSPropertyListSerialization dataFromPropertyList:withData format:NSPropertyListXMLFormat_v1_0 errorDescription:&error];
    if(plistData) {
        return [plistData writeToFile:[self dataFilePath] atomically:YES];
    } else {
        return FALSE;
    }
}


    
最新技术文章:
▪Android开发之登录验证实例教程
▪Android开发之注册登录方法示例
▪Android获取手机SIM卡运营商信息的方法
▪Android实现将已发送的短信写入短信数据库的...
▪Android发送短信功能代码
▪Android根据电话号码获得联系人头像实例代码
▪Android中GPS定位的用法实例
▪Android实现退出时关闭所有Activity的方法
▪Android实现文件的分割和组装
▪Android录音应用实例教程
▪Android双击返回键退出程序的实现方法
▪Android实现侦听电池状态显示、电量及充电动...
▪Android获取当前已连接的wifi信号强度的方法
▪Android实现动态显示或隐藏密码输入框的内容
▪根据USER-AGENT判断手机类型并跳转到相应的app...
▪Android Touch事件分发过程详解
▪Android中实现为TextView添加多个可点击的文本
▪Android程序设计之AIDL实例详解
▪Android显式启动与隐式启动Activity的区别介绍
▪Android按钮单击事件的四种常用写法总结
▪Android消息处理机制Looper和Handler详解
▪Android实现Back功能代码片段总结
▪Android实用的代码片段 常用代码总结
▪Android实现弹出键盘的方法
▪Android中通过view方式获取当前Activity的屏幕截...
▪Android提高之自定义Menu(TabMenu)实现方法
▪Android提高之多方向抽屉实现方法
▪Android提高之MediaPlayer播放网络音频的实现方法...
▪Android提高之MediaPlayer播放网络视频的实现方法...
▪Android提高之手游转电视游戏的模拟操控
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3