设为首页 加入收藏

TOP

Android 基础到提高(一)
2014-11-24 03:27:11 来源: 作者: 【 】 浏览:3
Tags:Android 基础 提高

getString(R.string.homepage_url);//根据资源标识符获取内容


------------------------创建菜单----------------------
override
public boolean onCreateOptionsMenu(Menu menu){
menu.add(0, MENU_ABOUT, 0, "关于...").setIcon(android.R.drawable.ic_menu_help);
menu.add(0, MENU_Quit, 0, "结束").setIcon(android.R.drawable.ic_menu_close_clear_cancel);
return super.onCreateOptionsMenu(menu);
}
//menu.add(0, 标识符(identifer), 0, 字符串或资源标识符).setIcon(android.R.drawable.ic_menu_close_clear_cancel);
图标 到 Tango,Nuvola,OpenclipArt 等网站有高质量的图标
内置图标 .setIcon(android.R.drawable.ic_menu_help) android 本身提供了一些现成的图标


@Override
public boolean onOptionsItemSelected(MenuItem item) {
// TODO Auto-generated method stub
switch(item.getItemId()) {
case MENU_ABOUT:
openOptionsDialog();
break;
case MENU_Quit:
finish();
break;
}
return super.onOptionsItemSelected(item);
}


包括 1。创建菜单 2。处理菜单


------------------------Manifest----------------------
Activity
Broadcast Intent Receiver
Service
Content Provider


uses-permission
permission
instrumentation


-----------------------------Activity----------------------
1.独立的activity //单纯跳到下个屏幕
Intent intent = new Intent();
intent.setClass(srcActivity.this, tarActivity.class);
startActivity(intent);
2.相互依赖的activity //activity 之间提供数据
Intent intent = new Intent();
intent.setClass(srcActivity.this, tarActivity.class);
Bundle bundle = new Bundle(); //传递的数据
bundle.putString("key",value);
...putInt 等很多方法 参考帮助文档
intent.putExtras(bundle);
startActivity(intent);


//新activity 解开信息
Bundle bundle = getIntent().getExtras();
value = bundle.getString(key) //和set 数据类型相对应


。。。也可以使用 intent.setString 等方法传递参数不建议使用


----------------------intent------------------------
Intent intent = new Intent(动作,内容);
动作:Intent.ACTION_VIEW ...看帮助
内容:activity,Uri... 看帮助
startActivity(intent);


Uri uri = Uri.parse("http://baidu.com");
Uri uri = Uri.parse("geo: 39.895874, 116.321238");


-----------------信息提醒(Notification)--------------
1。状态栏提醒
铃音|震动|闪灯提醒|状态栏信息
比如收到新消息 版本更新等信息 等消息通知


2. 使用状态栏传递消息
protected void showNotification (double BMI) {
NotificationManager barManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); //获取消息管理器
//getSystemService(ALARM_SERVICE) //获取闹铃
查看帮助文档 getSystemService 找到最新的内置系统服务列表
Notification barMsg = new Notification( //提醒消息
R.drawable.icon_128,
"哦, 你过重了!",
System.currentTimeMillis() //信息到达时间
);

barMsg.defaults |= Notification.DEFAULT_SOUND;
//barMsg.defaults |= Notification.DEFAULT_ALL;

PendingIntent contentIntent = PendingIntent.getActivity( //当用户点选状态栏信息是执行一个activity
this,
0,
new Intent(this, Bmi.class),
PendingIntent.FLAG_UPDATE_CURRENT);

barMsg.setLatestEventInfo(
Report.this, //当前activity
"你的 BMI 值过高", //状态栏显示的主题
"通知监督人", // 状态栏中显示的说明
contentIntent // 传入参数 指定当用户按下状态栏中信息时让机器开始执行的功能
);

barManager.notify(0, barMsg); //通知信息
}


pendingInent getService getBroadcast 方法执行一个服务或广播


内置图标 R.drawable.stat_sys_warning //系统状态图标


-------------------对话框------------------
setPositiveButton("确定",
new DialogInterface.OnclickListener(){
public void Onclick(
DialogInterface dialoginterface, int i){
}
}
)


setPositiveButton, setNegative

首页 上一页 1 2 下一页 尾页 1/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Linux下使用GCC命令编译代码 下一篇Android 横屏不重启 Activity

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·Shell脚本:Linux Sh (2025-12-25 05:50:11)
·VMware虚拟机安装Lin (2025-12-25 05:50:08)
·Linux学习教程,Linu (2025-12-25 05:50:06)
·工业机器人TCP校准中 (2025-12-25 05:19:17)
·opc 通讯协议与 TCP (2025-12-25 05:19:15)