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 ...
随机推荐
- VS下 dllimport与dllexport作用与区别
我相信写WIN32程序的人,做过DLL,都会很清楚__declspec(dllexport)的作用,它就是为了省掉在DEF文件中手工定义导出哪些函数的一个方法.当然,如果你的DLL里全是C++的类的话 ...
- [Android开发常见问题-18] Connection to https://dl-ssl.google.com refused
在使用Android SDK Manager的时候,有时候会遇到上述问题,其实原因很简单,属于本地配置的问题. 解决方法: 1.以文本文件的方式打开“C:\Windows\System32\drive ...
- Windows下连接php5.3+sql server2008
php连接sql server真是一件闹心的事, 折腾了许久,今天有了点起色,还是不错的. mssql extension is not available anymore on Windows wi ...
- Struts2源代码解读之Action调用
对于Struts2源代码的分析已经有些时日了,虽然网上有很多解读代码,不过自己还是写一个放上来,供大家参考一下. 解读过程: 直接在action类中打断点(包括构造函数和待执行方法)进行debug调试 ...
- c++ 10
一.二叉树 1.基本特征 1)树型结构的最简模型,每个节点最多有两个子节点--左子节点和右子节点. 2)单根性,每个子节点有且仅有一个父节点,整棵树有且仅有一个根节点. 3)递归性,以任何一个节点为根 ...
- HDU1841——KMP算法
这个题..需要对KMP的模板理解的比较透彻,以前我也只是会套模板..后来才知道..之会套模板是不行的..如果不能把握模板的每一个细节`,至少能搞清楚模板的每一个模块大体是什么意思.. 题意是给出两个串 ...
- 你被adblock坑过吗?
最近上线一个新版本,需要在导航增加一个app的下载入口(一个图片链接),然后经过了正常的原型图.设计.切图.上线的过程,一切都是那么顺利.上线之后,像往常一下会让产品进行确认,所有的调整和优化 ...
- js 随手记
var name = 'frog' function hello(){ alert(name); // undefined var name = 'bbc'; } 在javascript中,函数是可以 ...
- Oracle11g的注册表清理
每次卸载了oracle总是有一堆注册表没有清理,麻烦,特地在网上找了一个较为完整的,全文复制过来,存自己这里,如下: <<< Windows Registry Editor Vers ...
- 常用的方法,读取XML节点并赋值给List集合
一.前言 很多时候也可以直接在XML文件中配置好节点,在程序需要用到的时候,修改XML文件并不需要重新编译,这里是在极光推送中拿出来的一部分代码.代码简单,大家直接看例子吧. 二.实现过程 1.新创建 ...