当前位置: 首页 > news >正文

有的网站网速慢如何刷app推广次数

有的网站网速慢,如何刷app推广次数,做像淘宝这样的购物网站要多少钱,软件定制论坛对话框对于应用是必不可少的一个组件,在Android中也不例外。对话框对于一些提示重要信息,或者询问用户采取决定是否采取的特殊动作等额外交互的内容很有帮助。本篇博客将讲解一下Android下对话框的使用。 一、Dialog的分类 Dialog对话框即一个小窗口&am…

       对话框对于应用是必不可少的一个组件,在Android中也不例外。对话框对于一些提示重要信息,或者询问用户采取决定是否采取的特殊动作等额外交互的内容很有帮助。本篇博客将讲解一下Android下对话框的使用。

一、Dialog的分类

  Dialog对话框即一个小窗口,并不会填满整个屏幕,通常是以模态显示,要求用户必须采取行动才能继续进行剩下的操作。  

      Android提供了丰富的对话框支持,它提供了如下4中常用的对话框:

     1)AlertDialog:警告对话框,使用最广泛功能最丰富的一个对话框。

     2)ProgressDialog:进度条对话框,只是对进度条进行了简单的封装。

     3)DatePickerDialog:日期对话框。

     4)TimePickerDialog:时间对话框。

  所有的对话框,都是直接或间接继承自Dialog类,而AlterDialog直接继承自Dialog,其他的几个类均继承自AlterDialog。


二、AlertDialog

       AlertDialog的构造方法全部是Protected的,所以不能直接通过new一个AlertDialog来创建出一个AlertDialog。要创建一个AlertDialog,就要用到AlertDialog.Builder中的create()方法。以下为基本方法及说明。


2.1 确定取消对话框

      对话框中有2个按钮,通过调用 setPositiveButton 方法和 setNegativeButton 方法 可以设置按钮的显示内容以及按钮的监听事件


AlertDialog.Builder builder = new AlertDialog.Builder(MainDialog.this);   //创建AlertDialogbuilder.setIcon(R.drawable.icon);  builder.setTitle("你确定要离开吗?");  builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {  public void onClick(DialogInterface dialog, int whichButton) {  //这里添加点击确定后的逻辑  showDialog("你选择了确定");  }  });  builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {  public void onClick(DialogInterface dialog, int whichButton) {  //这里添加点击确定后的逻辑  showDialog("你选择了取消");  }  });  builder.create().show();
<span style="font-size:14px;">private void showDialog(String str) {  
//用于onClick操作后监听内容信息,下同AlertDialog.Builder(MainDialog.this)  .setMessage(str)  .show();  
}  </span>


2.2 多个按钮信息框


AlertDialog.Builder builder = new AlertDialog.Builder(MainDialog.this);           
builder.setIcon(R.drawable.icon);  
builder.setTitle("投票");  
builder.setMessage("您认为什么样的内容能吸引您?");  
builder.setPositiveButton("有趣味的", new DialogInterface.OnClickListener() {  public void onClick(DialogInterface dialog, int whichButton) {  showDialog("你选择了有趣味的");  }  
});  
builder.setNeutralButton("有思想的", new DialogInterface.OnClickListener() {  public void onClick(DialogInterface dialog, int whichButton) {  showDialog("你选择了有思想的");                      }  
});  
builder.setNegativeButton("主题强的", new DialogInterface.OnClickListener() {  public void onClick(DialogInterface dialog, int whichButton) {  showDialog("你选择了主题强的");    }  
});  
builder.create().show();  


2.3 列表框

final String[] mItems = {"item0","item1","itme2","item3","itme4","item5","item6"};  //创建数组用于列表选择
AlertDialog.Builder builder = new AlertDialog.Builder(MainDialog.this);   builder.setTitle("列表选择框");  builder.setItems(mItems, new DialogInterface.OnClickListener() {  public void onClick(DialogInterface dialog, int which) {  //点击后弹出窗口选择了第几项  showDialog("你选择的id为" + which + " , " + mItems[which]);  }  });  builder.create().show();  


2.4 单项选择列表


int mSingleChoiceID = -1;  //用于记录单选中的IdAlertDialog.Builder builder = new AlertDialog.Builder(MainDialog.this);   mSingleChoiceID = -1;  
builder.setIcon(R.drawable.icon);  builder.setTitle("单项选择");  builder.setSingleChoiceItems(mItems, 0, new DialogInterface.OnClickListener() {  public void onClick(DialogInterface dialog, int whichButton) {  mSingleChoiceID = whichButton;  showDialog("你选择的id为" + whichButton + " , " + mItems[whichButton]);  }  });  builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {  public void onClick(DialogInterface dialog, int whichButton) {  if(mSingleChoiceID > 0) {  showDialog("你选择的是" + mSingleChoiceID);  }  }  });  builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {  public void onClick(DialogInterface dialog, int whichButton) {  }  });  builder.create().show();  


2.5 多项选择列表框


       MultiChoiceID 用于记录多选选中的id号 存在ArrayList中,选中后 add 进ArrayList,取消选中后 remove 出ArrayList
ArrayList <Integer>MultiChoiceID = new ArrayList <Integer>();  AlertDialog.Builder builder = new AlertDialog.Builder(MainDialog.this);   MultiChoiceID.clear();  
builder.setIcon(R.drawable.icon);  builder.setTitle("多项选择");  builder.setMultiChoiceItems(mItems,  new boolean[]{false, false, false, false, false, false, false},  new DialogInterface.OnMultiChoiceClickListener() {  public void onClick(DialogInterface dialog, int whichButton,  boolean isChecked) {  if(isChecked) {  MultiChoiceID.add(whichButton);  showDialog("你选择的id为" + whichButton + " , " + mItems[whichButton]);  }else {  MultiChoiceID.remove(whichButton);  }  }  });  builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {  public void onClick(DialogInterface dialog, int whichButton) {  String str = "";  int size = MultiChoiceID.size();  for (int i = 0 ;i < size; i++) {  str+= mItems[MultiChoiceID.get(i)] + ", ";  }  showDialog("你选择的是" + str);  }  });  builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {  public void onClick(DialogInterface dialog, int whichButton) {  }  });  builder.create().show();  


2.6 进度条框


      点击进度条框按钮后,开启一个线程计算读取的进度。假设读取结束为 100,Progress在小于100的时候一直在线程中做循环++ 直到读取结束后,停止线程。
     mProgressDialog = new ProgressDialog(MainDialog.this);  mProgressDialog.setIcon(R.drawable.icon);  mProgressDialog.setTitle("进度条窗口");  mProgressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);  mProgressDialog.setMax(MAX_PROGRESS);  mProgressDialog.setButton("确定", new DialogInterface.OnClickListener() {  public void onClick(DialogInterface dialog, int whichButton) {  //这里添加点击后的逻辑  }  });  mProgressDialog.setButton2("取消", new DialogInterface.OnClickListener() {  public void onClick(DialogInterface dialog, int whichButton) {  //这里添加点击后的逻辑  }  });  mProgressDialog.show();  new Thread(this).start();  ic void run() {  
int Progress = 0;  
while(Progress < MAX_PROGRESS) {  
try {  Thread.sleep(100);  Progress++;    mProgressDialog.incrementProgressBy(1);  
} catch (InterruptedException e) {  // TODO Auto-generated catch block  e.printStackTrace();  
}  }  


2.7 自定义布局

      自定义布局在Android的开发中非常重要,因为它能让开发者做出自己五彩缤纷的Activity,而不用去使用系统枯燥的界面。比如我们在开发过程当中,要通过介绍系统发送的一个广播弹出一个dialog,但是dialog必需是基于activity才能呈现出来,如果没有activity 的话,程序就会崩溃。所以我们可以写一个自定义的 dialog 把它定义成一个activity,这样我们收到一条打开dialog的广播后,直接启动这个 activity  程序正常运行~~ 
     注明:下面这个例子只是写了自定义dialog 没有把它单独的写在一个activity中 如果需要的话 可以自己改一下。
 AlertDialog.Builder builder = new AlertDialog.Builder(MainDialog.this);   LayoutInflater factory = LayoutInflater.from(this);  final View textEntryView = factory.inflate(R.layout.test, null);  builder.setIcon(R.drawable.icon);  builder.setTitle("自定义输入框");  builder.setView(textEntryView);  builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {  public void onClick(DialogInterface dialog, int whichButton) {  EditText userName = (EditText) textEntryView.findViewById(R.id.etUserName);  EditText password = (EditText) textEntryView.findViewById(R.id.etPassWord);  showDialog("姓名 :"  + userName.getText().toString()  + "密码:" + password.getText().toString() );  }  });  builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {  public void onClick(DialogInterface dialog, int whichButton) {  }  });  builder.create().show();  
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"  android:layout_height="wrap_content"   android:layout_width="wrap_content"  android:orientation="horizontal"  android:id="@+id/test">  
<LinearLayout  android:layout_height="wrap_content"   android:layout_width="wrap_content"  android:orientation="horizontal"  android:id="@+id/dialogname">  <TextView android:layout_height="wrap_content"  android:layout_width="wrap_content"  android:id="@+id/tvUserName"   android:text="姓名:" />  <EditText android:layout_height="wrap_content"  android:layout_width="wrap_content"   android:id="@+id/etUserName"   android:minWidth="200dip"/>  
</LinearLayout>    
<LinearLayout  android:layout_height="wrap_content"   android:layout_width="wrap_content"  android:orientation="horizontal"  android:id="@+id/dialognum"  android:layout_below="@+id/dialogname"  
>  <TextView android:layout_height="wrap_content"  android:layout_width="wrap_content"  android:id="@+id/tvPassWord"   android:text="密码:" />  <EditText android:layout_height="wrap_content"  android:layout_width="wrap_content"   android:id="@+id/etPassWord"   android:minWidth="200dip"/>  
</LinearLayout>    
</RelativeLayout>


三、ProgressDialog

       有些时候,只是需要提示用户等待,比如在执行耗时操作等的时候,可以使用进度对话框来显示一个进度信息,提示用户等待,这个时候可以使用ProgressDialog。ProgressDialog的使用方式大部分可以参见ProgressBar,其实就是一个封装了ProgressBar的对话框。
  ProgressDialog有两种显示方式,一种是以一个滚动的环状图标,可以显示一个标题和一段文本内容的等待对话框;另外一种是带刻度的进度条,和常规的进度条用法一致。两种样式通过ProgressDialog.setProgressStyle(int style)设置,可以通过ProgressDialog的两个常量进行设置:STYLE_HORIZONTAL:刻度滚动;STYLE_SPINNER:图标滚动,默认选项。
  对于图标滚动,可以使用两种方式实现,一种是常规的调用构造函数,再设置对应的属性;另外一种是直接使用ProgressDialog的静态方法show(),直接返回一个ProgressDialog对象,并且调用show()方法。
 // 第一种方法,使用ProgressDialog构造函数progressDialog = new ProgressDialog(MainActivity.this);progressDialog.setIcon(R.drawable.ic_launcher);progressDialog.setTitle("等待");progressDialog.setMessage("正在加载....");progressDialog.show();// 第二种方法,使用静态的show方法progressDialog=ProgressDialog.show(MainActivity.this, "等待", "正在加载....", false, false);new Thread(new Runnable() {@Overridepublic void run() {try {Thread.sleep(5000);            } catch (Exception e) {e.printStackTrace();}finally{progressDialog.dismiss();}                        }}).start();


转自http://www.cnblogs.com/afirefly/archive/2011/09/22/2185645.html

       http://www.apkbus.com/android-138036-1-1.html?_dsign=a2282f7e

http://www.dinnco.com/news/3637.html

相关文章:

  • 网站制作西安百度广告标识
  • 深圳vi设计公司深圳logo设计seo优化软件免费
  • 做业务有哪些好的网站国外域名
  • 深圳给企业做网站app推广是什么工作
  • 建设部网站技术负责人业绩表品牌广告和效果广告的区别
  • 做网站云服务期附近广告公司联系电话
  • 重庆做网站团队十大搜索引擎地址
  • 建设工程168网站厦门seo关键词排名
  • 上海传媒公司ceo上海优化seo公司
  • 做网站不用编程申请自己的网站
  • 充实网站 廉政建设 板块seo是啥意思
  • 阿里巴巴怎样做网站百度推广产品有哪些
  • 网站首页的浮窗怎么做关键词调整排名软件
  • 如何免费做网站详细点说互联网营销师是干什么的
  • 商城网站建设经验免费seo网站优化工具
  • 防网站黑客谷歌优化的最佳方案
  • o2o商城网站制作百度官网首页登录入口
  • 做楼盘网站运营培训班学费大概多少
  • 网站优化 检测响应速度制作网站需要什么软件
  • 泉州网站建设选择讯呢网络信息发布平台
  • phpcms v9 网站建设入门百度推广官方
  • 网站建设优化公司呼和浩特最近疫情最新消息
  • 网站建设维护职责百度代理公司
  • 您提交的网站域名无备案搜索引擎优化案例
  • 做机械设备内销网站有哪些有哪些实用的网络推广方法
  • 网站建设行业百度置顶广告多少钱
  • 天津网站建设网络求几个微信推广平台
  • 网站建设江苏百拓推广平台哪儿有怎么做
  • 做网站友情链接都写什么产品推销
  • 印江建设局网站微信公众号营销