请大家伙多多指教:

邮箱:weimingweicom@sina.com

请关注:ailiandeziwei

总的页面:

注意:按钮间方法的改变需要:     android:onClick="clearNoti"    添加相应的方法即可

1.点击状态栏按钮时:

public void Notification(View v){

showNotification("亲来短信了","5557","我喜欢你", R.drawable.ic_launcher, R.drawable.ic_launcher);
}
public void showNotification(String tickerText,String contentTitle,String contentText ,int iconId,int notiId ){
 notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
//创建一个Notification 
 Notification  notification = new Notification();
 //设置发出信息的内容
 notification.icon =iconId;
 //设置发出的信息
 notification.tickerText=tickerText;
 //设置发出通知的时间
 notification.when=System.currentTimeMillis();
 //设置显示通知的默认的发声或者振动,Light效果
 notification.defaults=Notification.DEFAULT_VIBRATE;//振动的效果
 //3步:  PendingIntent  Android系统负责维护
 PendingIntent pendingIntent = PendingIntent.getActivity(this, 0,getIntent() ,0);
//Notification notification = new Notification(R.drawable.ic_launcher, "有新的消息", System.currentTimeMillis());
 //4步;设置更加详细的信息
notification.setLatestEventInfo(this, contentTitle,contentText,pendingIntent);
//5步:使用notificationManager对象的notify方法 显示Notification消息   需要制定 Notification的标识
 notificationManager.notify(notiId,notification);

}  效果图:

2.点击清楚状态按钮时:

//清除的操作
public void clearNoti(View v ){

notificationManager.cancelAll();//清除所有
}

3点击创建对对话框时:   public void DiaLog(){
  AlertDialog alertDialog = new AlertDialog.Builder(this)
.setIcon(R.drawable.mw)
                    .setTitle("DiaLog").setMessage("是否创建文件")
                    .setPositiveButton("确认",new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialog, int which) {
 
new AlertDialog.Builder(MainActivity.this).setMessage("您点击了确认按钮,文件已经被创建").show();
}
                    })
.setNegativeButton("取消",new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialog, int which) {
new AlertDialog.Builder(MainActivity.this)
.setMessage("您已经选择了取消的按钮,该文件不会被创建").create()
.show();

}

}).show();
   }

4。点击简单列表对话框

public void Simplelistdialog(View v){
final String items[] = {"java","php","3g",".net"};
AlertDialog alertDialog = new AlertDialog.Builder(this)
.setTitle("简单列表对话框").setItems(items, new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(getApplicationContext(), "亲,你喜欢的科目是:"+items[which],Toast.LENGTH_LONG).show();

}
}).show();
                  
   }

5.点击单选列表对话框

public void Radiolistdialog(View v){
  final String items[] = {"java","php","3g",".net"};
AlertDialog alertDialog = new AlertDialog.Builder(this).setTitle("单选列表对话框")
//.setSingleChoiceItems(items, checkedItem, listener)
  //.setSingleChoiceItems(itemsId, checkedItem, listener)
//.setSingleChoiceItems(cursor, checkedItem, labelColumn, listener)  labelColumn如果数据源是数据集
//数据集中的某一列会作为列表对话框的数据加载的列表框中,该参数表示该列的名称(字段名称)

.setSingleChoiceItems(items,1, new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(getApplicationContext(), "亲,你喜欢的科目是:"+items[which],Toast.LENGTH_LONG).show();

}
}).show();
   }
   

7.点击多选列表对话框

public void Multiselectlistdialog(View v){
 final String items[]={"Java","PHP","3G",".NET"};

new AlertDialog.Builder(this).setTitle("多选列表对话框")
//.setMultiChoiceItems(itemsId, checkedItems, listener)
//.setMultiChoiceItems(cursor, isCheckedColumn, labelColumn, listener)
.setMultiChoiceItems(items, new boolean[]{false,true,true,false}, new DialogInterface.OnMultiChoiceClickListener() {

@Override
public void onClick(DialogInterface dialog, int which, boolean isChecked) {

if(isChecked){
Toast.makeText(getApplicationContext(), "亲,你选中的科目是:"+items[which], Toast.LENGTH_LONG).show();
}

}
}).setPositiveButton("确认", new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(getApplicationContext(), "亲,你喜欢的科目有:", Toast.LENGTH_LONG).show();
}
}).show();
}

8.点击进度条

public void ProgressDialog(View v){
handler = new Handler(){
  @Override
public void handleMessage(Message msg) {

super.handleMessage(msg);
switch(msg.what){
case PRO:
if(PRO>=MAX_PROGRESS){
//重新设置
progress=0;
progressDialog.dismiss();//销毁对话框
 
}else{
progress++;
progressDialog.incrementProgressBy(1);
//延迟发送消息
handler.sendEmptyMessageDelayed(PRO,100);
}
break;
default:
 break;
}

};
      progressDialog = new ProgressDialog(this);
      progressDialog.setIcon(R.drawable.mw);
      progressDialog.setTitle("正在处理数据......");
      progressDialog.setMessage("请稍后.....");
      progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER); //设置进度条对话框  (水平,旋体)
      //设置最大值
      progressDialog.setMax(MAX_PROGRESS);
      progressDialog.setButton("暂停",new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialog, int which) {
handler.removeMessages(PRO);

}
});
      progressDialog.setButton2("取消", new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialog, int which) {

//删除消息队列
handler.removeMessages(PRO);
//恢复进度初始值
progress=0;
progressDialog.setProgress(progress);
}
});
      //显示 
      progressDialog.show();
      //必须设置到show之后,show之前可能bug
      progress = (progress>0) ?progress:0;
      progressDialog.setProgress(progress);
      
      //线程
      handler.sendEmptyMessage(PRO);
}

还有一种效果是:

9.点击自定义表对话框

public void MyDialog(View v){
    
LayoutInflater  layoutInflater = getLayoutInflater();
View view = layoutInflater.inflate(R.layout.activity_main, null); //R.layout.activty_main自定义的布局文件这里可以是自己随意定义的
new AlertDialog.Builder(this).setView(view).setTitle("自定义的对话框").setPositiveButton("确认按钮", new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialog, int which) {
//处理

}
}).show();

}

Android应用之基本的组件(一)的更多相关文章

  1. 收藏的Android很好用的组件或者框架。

    收藏的Android很好用的组件或者框架. android框架  先说两个站点: http://www.androidviews.net/ 非常好的国外开源码站,就是訪问速度有点慢啊 http://w ...

  2. Android图表日历控件组件

    1.图表引擎 - AChartEngine AChartEngine是一款基于Android的图表绘制引擎,它为Android开发人员提供了非常多有用的图表绘制工具类,假设你须要在Android应用中 ...

  3. 支付宝 Android 版使用的开源组件

    支付宝 Android 版使用的开源组件 前言: 花了点时间整理了 支付宝 Android 客户端使用的开源组件,给需要的同学.在你不知道用什么开源框架的时候可以作下参考,毕竟支付宝是阿里的重量级产品 ...

  4. Android 开发:由模块化到组件化(一)

    在Android SDK一文中,我们谈到模块化和组件化,现在我们来聊聊组件化开发背后的哪些事.最早是在广告SDK中应用组件化,但是同样适用于普通应用开发 以下高能,请做好心理准备,看不懂请发私信来交流 ...

  5. [Android Pro] 由模块化到组件化(一)

    cp from : https://blog.csdn.net/dd864140130/article/details/53645290 在Android SDK一文中,我们谈到模块化和组件化,现在我 ...

  6. Android应用程序的基本组件介绍

    1.Activity和View Activity是Android应用中负责与用户交互的组件,它只能通过setContentView(View)来显示指定组件. View组件是所有UI控件.容器空间的基 ...

  7. Android 开发:由模块化到组件化

    在Android SDK一文中,我们谈到模块化和组件化,现在我们来聊聊组件化开发背后的哪些事.最早是在广告SDK中应用组件化,但是同样适用于普通应用开发 以下高能,请做好心理准备,看不懂请发私信来交流 ...

  8. Android零基础入门第2节:Android 系统架构和应用组件那些事

    原文:Android零基础入门第2节:Android 系统架构和应用组件那些事 继上一期浅谈了Android的前世今生,这一期一起来大致回顾一下Android 系统架构和应用组件. 一.Android ...

  9. android笔记:获取View组件宽度以及ViewTreeObserver

    View宽高测量方法: 测量方法有三种,如下: 1)(直接在onCreate()执行) int w = View.MeasureSpec.makeMeasureSpec(0,View.MeasureS ...

  10. 解决Android界面布局添加EditText组件后界面无法预览

    错误报告: Exception raised during rendering: java.lang.System.arraycopy([CI[CII)V Exception details are ...

随机推荐

  1. MySQL 5.7.14 安装

    http://www.cnblogs.com/zcGu/articles/5740936.html 因笔者个人需要需要在本机安装Mysql,先将安装过程记录如下,希望对他人有所参考. 一, 1, 进入 ...

  2. 五毛的cocos2d-x学习笔记01-创建项目

    终于准备开始学习cocos2d-x了.因为想和同学一起做游戏参加比赛,所以打算学习很热的Cocos2d-x.因为已经学习了C++,所以我想入门应该不是很困难.再加上官网有中文教程以及多不胜数的游戏开发 ...

  3. MyEclipse下JDBC-MySQL配置总结

    原创文章,转载请注明:MyEclipse下JDBC-MySQL配置总结  By Lucio.Yang 新手,初期配置未成功,后将网上的方法几乎全部尝试才弄好,下面的方法全而不简练,希望高手指正. 1. ...

  4. [转载]CSS 创作指南(Beta)(css规范)

    当年还在纠结各种规范的时候,不知道从哪里翻到这个,就让我脱离了css这个规范的苦海了... 反正就是团队和项目合作说的算,选择合适的进行使用就可以了,见到合适的文章,我也会转载过来的 来源 https ...

  5. eclipse 查看快捷键

    无意中发现,ctrl+shift+L 能打开快捷键窗口

  6. 命名空间“System.Web.Mvc”中不存在类型或命名空间“Ajax”(是否缺少程序集引用?)

    原文  http://www.cnblogs.com/LJP-JumpAndFly/p/4109602.html 好吧,非常激动的说,这个问题搞了我一个晚上,网上的帖子太少了,好像不超过2篇,而且说得 ...

  7. Matlab近期用到的函数(持续更新)

    最近任务用到matlab较多,第一版的代码大部分对于矩阵类的计算都是用for循环来完成的,主要是思维还没有适应matlab.看了同事的一份代码后,现在遇到需要循环的地方第一反应就是如何能够用矩阵的直接 ...

  8. Zookper

    http://blog.csdn.net/yangbutao/article/details/11669609 http://www.oschina.net/code/snippet_255033_2 ...

  9. Solr4.7从文件创建索引

    索引数据源并不会一定来自于数据库.XML.JSON.CSV这类结构化数据,很多时候也来自于PDF.word.html.word.MP3等这类非结构化数据,从这类非结构化数据创建索引,solr也给我们提 ...

  10. CMake 简单介绍

    CMake特点 CMake需要用户用CMake规范的语法编写CMake脚本,该语法简单易用,入门极其顺手 原生支持 C/C++/Fortran/Java 的相依性的自动分析功能,免除了程序员对代码依赖 ...