007.androidUI开发进阶(基础--案例) .
1.Dialog有四种,分别是AlertDialog,ProgressDialog,DatePickerDialog,TimePickerDialog
1.1AlertDialog
public class MainActivity extends Activity {
private View view;
private TextView tView;
private EditText eText; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
LayoutInflater layoutInflater = (LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE);
view = layoutInflater.inflate(R.layout.cell, null);
tView = (TextView) view.findViewById(R.id.tv2);
eText = (EditText) view.findViewById(R.id.et1);
new AlertDialog.Builder(this).setTitle("友情提示").setView(view)
.setMessage("确定退出?")
.setNegativeButton("取消", new OnClickListener() { @Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this, "确定",
Toast.LENGTH_SHORT).show();
}
}).setNeutralButton("中立", new OnClickListener() { @Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this, "取消",
Toast.LENGTH_SHORT).show();
}
}).setPositiveButton("确定", new OnClickListener() { @Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this, eText.getText()
.toString(), Toast.LENGTH_SHORT).show();
// tView.setText(eText.getText().toString());
}
}).show();
} }
1.2ProgressDialog
ProgressDialog pgd = new ProgressDialog(this);
pgd.setTitle("nihao");
pgd.setMessage("hehe");
//pgd.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
pgd.setProgress(100);
pgd.show();
1.3DatePickerDialog
DatePickerDialog datePickerDialog = new DatePickerDialog(this,new OnDateSetListener() { @Override
public void onDateSet(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
// TODO Auto-generated method stub }
}, myear,mmouth,mday);datePickerDialog.show();
1.4 TimePickerDialog
于1.3相同的使用方式。
2.Menu有三种:分别是:optionsMenu,SubMenu,ContextMenu
2.1.OptionsMenu
public boolean onCreateOptionsMenu(Menu menu) {
menu.add(menu.NONE,1,menu.NONE,"菜单1");
menu.add(menu.NONE,2,menu.NONE,"菜单2");
menu.add(menu.NONE,3,menu.NONE,"菜单3");
menu.add(menu.NONE,4,menu.NONE,"菜单4");
menu.add(menu.NONE,5,menu.NONE,"菜单5");
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case 1:
Toast.makeText(this,"1", Toast.LENGTH_SHORT).show();
break; default:
Toast.makeText(this,"其他", Toast.LENGTH_SHORT).show();
break;
}
return super.onOptionsItemSelected(item);
}
2.2.SubMenu
@Override
public boolean onCreateOptionsMenu(Menu menu) {
menu.add(menu.NONE,1,menu.NONE,"菜单1");
menu.add(menu.NONE,2,menu.NONE,"菜单2");
menu.add(menu.NONE,3,menu.NONE,"菜单3");
menu.add(menu.NONE,4,menu.NONE,"菜单4");
menu.add(menu.NONE,5,menu.NONE,"菜单5");
SubMenu subMenu = menu.addSubMenu(menu.NONE,6,menu.NONE,"菜单6");
subMenu.setHeaderTitle("你好");
subMenu.setIcon(R.drawable.ic_launcher);
subMenu.addSubMenu(menu.NONE,7,menu.NONE,"菜单7");
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case 1:
Toast.makeText(this,"1", Toast.LENGTH_SHORT).show();
break; default:
Toast.makeText(this,"其他", Toast.LENGTH_SHORT).show();
break;
}
return super.onOptionsItemSelected(item);
}
2.3ContextMenu
public class MainActivity extends Activity { @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); TextView textView = (TextView) findViewById(R.id.tv1);
registerForContextMenu(textView);
} @Override
public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenuInfo menuInfo) {
menu.add(menu.NONE,1,menu.NONE,"菜单1");
menu.add(menu.NONE,2,menu.NONE,"菜单2");
menu.add(menu.NONE,3,menu.NONE,"菜单3");
menu.add(menu.NONE,4,menu.NONE,"菜单4");
menu.add(menu.NONE,5,menu.NONE,"菜单5");
super.onCreateContextMenu(menu, v, menuInfo);
}
@Override
public boolean onContextItemSelected(MenuItem item) {
// TODO Auto-generated method stub
switch (item.getItemId()) {
case 1:
Toast.makeText(this,"1",Toast.LENGTH_SHORT).show();
break; default:
break;
}
return super.onContextItemSelected(item);
}
}
3.Notification
NotificationManager notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
//声明Notification
Notification notification = new Notification();
//设置notification的参数
notification.icon=R.drawable.ic_launcher; Intent intent = new Intent(this,MainActivity.class);
PendingIntent pendingIntent = PendingIntent.getActivity(this,0, intent,0);
notification.setLatestEventInfo(this,"haha" ,"contentText",pendingIntent);
notificationManager.notify(10,notification);
4.TabHost
TabHost tabHost = getTabHost();
LayoutInflater.from(this).inflate(R.layout.activity_main,
tabHost.getTabContentView(), true);
Intent intent = new Intent(MainActivity.this, SeocndActivity.class); tabHost.addTab(tabHost.newTabSpec("tab1").setIndicator("搜索")
.setContent(intent));
tabHost.addTab(tabHost.newTabSpec("tab2").setIndicator("搜索")
.setContent(intent));
tabHost.addTab(tabHost.newTabSpec("tab2").setIndicator("搜索")
.setContent(R.id.l1));
007.androidUI开发进阶(基础--案例) .的更多相关文章
- mysql 开发进阶篇系列 46 物理备份与恢复( xtrabackup的 选项说明,增加备份用户,完全备份案例)
一. xtrabackup 选项说明 在操作xtrabackup备份与恢复之前,先看下该工具的选项,下面记录了xtrabackup二进制文件的部分命令行选项,后期把常用的选项在补上.点击查看xtrab ...
- TypeScript进阶开发——ThreeJs基础实例,从入坑到入门
前言 我们前面使用的是自己编写的ts,以及自己手动引入的jquery,由于第三方库采用的是直接引入js,没有d.ts声明文件,开发起来很累,所以一般情况下我们使用npm引入第三方的库,本文记录使用np ...
- 处女作《Web全栈开发进阶之路》出版了!
书中源码下载地址:https://github.com/qinggee/WebAdvanced 01. 当初决定写博客的原因非常的纯洁:只要每个月写上 4 篇以上博客,月底的绩效奖金就多 500 块. ...
- [转]抢先Mark!微信公众平台开发进阶篇资源集锦
FROM : http://www.csdn.net/article/2014-08-01/2820986 由CSDN和<程序员>杂志联合主办的 2014年微信开发者大会 将于8月23日在 ...
- WEB前端开发CSS基础样式全面总结
Web前端开发css基础样式全面总结 颜色和单位的使用 颜色 用颜色的名字表示颜色,比如:red 用16进制表示演示 比如:#FF0000 用rgb数值表示颜色,rgb(红,绿,蓝),每个值都在0-2 ...
- iOS开发进阶
<iOS开发进阶>基本信息作者: 唐巧 出版社:电子工业出版社ISBN:9787121247453上架时间:2014-12-26出版日期:2015 年1月开本:16开页码:268版次:1- ...
- HTML5游戏开发进阶指南(亚马逊5星畅销书,教你用HTML5和JavaScript构建游戏!)
HTML5游戏开发进阶指南(亚马逊星畅销书,教你用HTML5和JavaScript构建游戏!) [印]香卡(Shankar,A.R.)著 谢光磊译 ISBN 978-7-121-21226-0 201 ...
- iOS原生地图开发进阶——使用导航和附近兴趣点检索
iOS原生地图开发进阶——使用导航和附近兴趣点检索 iOS中的mapKit框架对国际化的支持非常出色.在前些篇博客中,对这个地图框架的基础用法和标注与覆盖物的添加进行了详细的介绍,这篇博客将介绍两个更 ...
- HTML5游戏开发进阶指南
<HTML5游戏开发进阶指南> 基本信息 作者: (印)香卡(Shankar,A.R.) 译者: 谢光磊 出版社:电子工业出版社 ISBN:9787121212260 上架时间:20 ...
随机推荐
- SQL Server (MSSQLSERVER) 服务因 找不到指定的模块。 服务特定错误而停止。
新装了sql server 2008,发现sqlserver 服务没法起来.查看系统日志是7024如下: 事件类型: 错误 事件来源: Service Control Manager 事件种类: 无 ...
- apache 配置网站目录,虚拟目录,新端口
1 配置网站目录,以ubuntu为例 1)打开apache的默认配置文件夹:cd /etc/apache2/sites-available 2)打开配置文件,本机为sudo vi 000-defau ...
- mybatis于Date和DateTime现场插入
最近,该公司使用MyBatis3做数据持久层,有在该领域Date和DateTime种类,只有在插入数据时属性设置为一个实体Timestamp将相应mysql的DateTime类型.Date会相应mys ...
- Android应用程序键盘(Keyboard)消息处理机制分析
在Android系统中,键盘按键事件是由WindowManagerService服务来管理的,然后再以消息的形 式来分发给应用程序处理,不过和普通消息不一样,它是由硬件中断触发的:在上一篇文章< ...
- js转换ascii编码如中文友转换为编码友;可防止乱码
- [J2EE框架][Debug]
注意xml头部问题 比如在xx-servlet中注意: <mvc:annotation-driven/> <context:component-scan base-package=& ...
- overflow:hidden
原来以为overflow:hidden能隐藏所有溢出的子元素,但今天发现我错了. 对于overflow:hidden的最大误解时:当一个具有高度和宽度中至少一项的容器应用了overflow:hidde ...
- Html5+css3实现3D转动效果
由于最近一直在忙着筹划去上海工作的事情,所以博客更新的速度也就慢了下来.前几天面试了几家公司,也拿到几份offer,总结了一些面试中遇到的问题,最近整理一下会和大家一起分享.今天呢,就和大家分享一下前 ...
- C# 实现预览dwg文件完整源代码(无需autocad环境)
using System; using System.Drawing; using System.Collections; using System.ComponentModel; using Sys ...
- UIScrollView的基本使用和一些常用代理方法
- (void)viewDidLoad { [super viewDidLoad]; scrollView = [[UIScrollView alloc] initWithFrame:CGRectMa ...