篇一:安卓开发对话框代码及效果
android dialog ——列表对话框
分类: android入门2011-04-23 15:04 5497人阅读 评论(5) 收藏 举报 dialogandroidlayoutbuttonencodingclass
效果图:
初始状态
点击“显示列表对话框”按钮
点击对话框中的“足球”后,输入框显示的结果
第一步:
首先将列表对话框列表项中的字符数据(篮球、足球和排球)放在res/values/array.xml中
[xhtml] view plaincopy 1. <?xml version="1.0" encoding="utf-8"?>
2. <resources>
3. <string-array name="hobby">
4.<item>篮球</item>
5.<item>足球</item>
6.<item>排球</item>
7. </string-array>
8. </resources>
第二步:
在res/layout/list_dialog_layout.xml里定义一个输入框和一个按钮
[xhtml] view plaincopy
1. <?xml version="1.0" encoding="utf-8"?>
2. <LinearLayout
3.xmlns:android="https://schemas.android.com/apk/res/android"
4.android:orientation="vertical"
5.android:layout_width="fill_parent"
6.android:layout_height="wrap_content">
7.<EditText android:id="@+id/editText"
8. android:layout_width="fill_parent"
9. android:layout_height="wrap_content"
10. android:text="这是一个列表对话框Demo"/>
11.
12.
13.
14.
15.
16.<Button android:id="@+id/button" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="显示列表对话框 " /></LinearLayout>
第三步:
产生对话框,需要AlertDialog.Builder作为载体,也就是说AlertDialog.Builder来充当内容部分的载体
对于列表对话框来说使用setItems,将array.xml中的数据关联到buidler里面
[java] view plaincopy
1. builder.setItems(R.array.hobby, listener);
定义一个监听器监听列表项中的单击事件
[java] view plaincopy
1. DialogInterface.OnClickListener listener =
2. new DialogInterface.OnClickListener() {
3.
4.@Override
5.public void onClick(DialogInterface dialogInterface
, int which) {
6. EditText editText = (EditText) findViewById(R.i
d.editText);
7. editText.setText("你选择了: " +
8. getResources().getStringArray(R.array.hobby
)[which]);
9. }
10. };
关于整个ListDialogActivity代码如下:
[java] view plaincopy 1. package com.mylistdialog.activity;
2.
3. import android.app.Activity;
4. import android.app.AlertDialog;
5. import android.app.Dialog;
6. import android.app.AlertDialog.Builder;
7. import android.content.DialogInterface;
8. import android.os.Bundle;
9. import android.view.View;
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.super.onCreate(savedInstanceState); setContentView(R.layout.list_dialog_layout); Button button = (Button) findViewById(R.id.but View.OnClickListener listener = new View.OnCli@Overridepublic void onClick(View view) { showDialog(LISTDIALOG);}import android.widget.Button;import android.widget.EditText;/*** @author jamesliu*/public class ListDialogActivity extends Activity { private final int LISTDIALOG = 1; @Override public void onCreate(Bundle savedInstanceState) { ton);ckListener() {
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.}; button.setOnClickListener(listener); } @Override protected Dialog onCreateDialog(int id) { Dialog dialog = null; switch(id) {case LISTDIALOG: Builder builder = new AlertDialog.Buil
der(this);
40. builder.setTitle("列表对话框");41.
42.
43.
44.
45.
46.
47.
48.
49. builder.setIcon(R.drawable.dialog); DialogInterface.OnClickListener listen new DialogInterface.OnClickListene@Overridepublic void onClick(DialogInte int which) { EditText editText =(EditText) findViewByIer = r() {rface dialogInterface,
d(R.id.editText);
50. editText.setText("你选择
了: " +getResources()
51.
52.
53.
54.
55.
56.
57.
58.
59. .getStringArray(R.} }; builder.setItems(R.array.hobby, listen dialog = builder.create(); break; } return dialog; }array.hobby)[which]);er);
篇二:如何评价代码质量
如何评价代码质量
我们平时买东西的时候,要看一看东西的质量怎么样,如颜色好看否、样式时尚否、经久耐用否,然后再决定买不买。软件作为一种商品,也存在质量高低之分,从哪些方面来评价软件的质量状况呢?
代码是软件的元素,软件是产品的灵魂,所以评价代码质量的标准源于评价产品质量的标准。
产品服务于用户,用户的评价体现了代码的质量,用户在使用软件产品时的三种不同倾向或观点:产品运行、产品修改和产品转移。
由图可见,评价代码质量的主要指标:
1. 正确性(Correctness)
系统满足规格说明和用户目标的程度,即在预定环境下能正确地完成预期功能的程度。
如软件有没有按照需求规格来完成,计算出的结果是否正确,计算结果是否精确。
2.
健壮性/鲁棒性(Robustness) 健壮性是指在异常情况下(如硬件发生故障、输入的数据无效或操作错误等),软件能够正常运行的能力。
健壮性有两层含义:一是容错能力,二是恢复能力。
容错是指发生异常情况时系统不出错误的能力,对于应用于航空航天、武器、金融等领域的这类高风险系统,容错设计非常重要。
而恢复则是指软件发生错误后(不论死活)重新运行时,能否恢复到没有发生错误前的状态的能力。 例如:因输入数据不正确,引起系统异常,这是容错能力不高引起的健壮性问题;操作系统死机了,重启后能够正常使用,说明具有一定恢复能力,具有一定的健壮性;数据库发生故障后,再次启动时一般能够恢复到正常的状态,恢复能力比较好。
3.
可靠性(Reliability) 软件系统在一定的时间内无故障运行的能力。
可靠性是一个与时间相关的属性,指的是在一定环境下,在一定的时间段内,程序不出现故障的概率,因此是一个统计量,通常用平均无故障时间(MTTF, mean-time to fault)来衡量。
可靠性不同于正确性和健壮性,软件可靠性问题通常是由于设计中没有料到的异常和测试中没有暴露的代码缺陷引起的。
例:由于某个地方数据库连接没有释放,在长时间运行的时候,出现活动的数据库连接数过多,造成系
统越来越慢,甚至系统停止服务。
4.
性能(Performance) 性能是指软件及时提供相应服务的能力。具体而言,性能包括速度、吞吐量和持续高速性三方面的要求:
速度往往通过平均响应时间来度量;
吞吐量通过单位时间处理的交易数来度量;
持续高速性是指保持高度处理速度的能力。 ? ? ?
效率(Efficiency)指软件对CPU处理能力和存储能力这两大类计算机资源的使用效率。效率和性能反映了同一问题的“表”、“里”,性能为“表”,效率为“里”。
如系统运算一个报表,需要很长时间,这就是性能问题。
5. 安全性(Security)
指软件同时兼顾向合法用户提供服务,以及阻止非授权使用软件及资源的能力。
安全性既属于技术问题又属于管理问题。一般地,如果黑客为非法入侵花费的代价(考虑时间、费用、风险等多种因素)高于得到的好处,那么这样的系统就可以认为是安全的。
例:有人可以访问非授权的资源,这就是安全性问题。
6. 易用性(Usability)
易用性是指用户使用软件的容易程度。
软件的易用性要让用户来评价。
例:对于一般用户而言,Windows的易用性比Linux的高。
7. 可用性(Availability)
指的是产品对用户来说有效、易学、高效、好记、少错和令人满意的程度,即用户能否用软件完成他的任务,效率如何,主观感受怎样。
ISO 9241-11国际标准对可用性作了如下定义:产品在特定使用环境下为特定用户用于特定用途时所具有的有效性(effectiveness)、效率(efficiency)和用户主观满意度(satisfaction)。其中:
?
?
?
8. 有效性:用户完成特定任务和达到特定目标时所具有的正确和完整程度; 效率:用户完成任务的正确和完整程度与所使用资源(如时间)之间的比率; 满意度:用户在使用产品过程中所感受到的主观满意和接受程度。 互操作性(Interoperability)
指本软件与其他系统交换数据和相互调用服务用以协同运作的难易程度。
例:利用Web Service增加软件的互操作性。
9. 易理解性(Understandability)
理解和使用系统的难易程度。
10. 可扩展性(Extensibility)/灵活性(Flexibility)/适应性(Adaptability)/可伸缩性(Scalability)
反映软件适应“变化”的能力。调整、修改或改进正在运行的软件系统以适应新需求、变化了的需求的难易程度。
例:如报销系统原来不需要总经理审批,现在要改为总经理审批,可扩展性强的系统不需要作太多调整;如用户和数据量增加时,通过增加服务器来提高系统性能,这样可伸缩性比较强。
11. 可重用性(Resuability)
重用软件或其中一部分的难易程度。
12. 可测试性(Testability)
对软件测试以证明其满足需求规约的难易程度。
13. 可维护性(Maintainability)
为修改Bug、增加功能、提高质量而诊断并修改软件的难易程度。
14. 可移植性(Portability)
软件不经修改或稍加修改就可以运行于不同软硬件环境的难易程度,主要体现为代码的可移植性。
例:Java程序可以在Windows系统和Linux上运行,具有较好的可移植性。
软件有这么多质量属性,对他们分类似乎更容易理解一些。McCall等人于1977年将软件质量属性分为三大类,即产品运行、产品修改、产品转移时的质量属性。温昱著《软件架构设计》把软件质量属性分为运行期的软件质量属性和开发期的软件质量属性。
就像商品一样,不同的人关注的质量角度也不相同。我们可以把软件的各种用户找出来,然后看看他们分别关注软件质量的哪些方面,这样在开发软件的时候,就可以找出比较重要的软件质量属性,就可以做到有的放矢,让用户在使用软件时更加满意。由于软件也分成很多类型,如操作系统、游戏、应用软件、中间件、框架等等,每种软件对应的用户也不一样,本文作为一个探讨,以普通应用软件为例,给出软件质量的不同视角:
?
?
?
? 利用图形界面完成业务的用户:正确性、健壮性、可靠性、性能、易用性、可用性、互操作性、可扩展性 进行系统监控、备份与恢复等操作的管理员:健壮性、可靠性、安全性、易用性、可用性、可扩展性、可维护性、可移植性 利用软件提供的接口(API)进行其他系统开发的高级用户:正确性、健壮性、可靠性、性能、可用性、互操作性、易理解性、可扩展性 进行代码级维护的开发/维护人员:易理解性、可扩展性、可重用性、可测试性、可维护性、可移
植性
由于软件面对的用户是千差万别的,从用户的角度来对软件质量属性进行分类,更容易把握软件在不同用户眼中的质量怎么样,从而利于从正确的方面来提高软件质量。
参考资料:
?
?
? 软件架构设计/温昱 电子工业出版社 2007.5 软件工程/张海藩 清华大学出版社 1998 高质量程序设计指南:C++/C语言(第三版)
篇三:2016网站运营必备插件代码,你用了几个?
2016网站运营必备插件代码,你用了几个?
网站的运营,发展到今天,网站通用部分的功能,很多已经有了非常成熟的产品插件可以使用,比起独立开发的耗时、维护,以及还有产品不成熟的风险,这些网站的功能插件确实非常具有价值!互联网的发展,特别是进入移动互联网的今天,更是日新月异的在变化!到了2016年,网站运营有哪些必备的插件呢?以下是小编的分享,请大家多多指正!
1. 网站统计
好吧,把这个放上来小编真的不是用来混字数的?!!。
每位站长必备,当然要放在第一位喽,不用不知道,一用还可以,深用真的很强大!
百度站长统计
百度自己家出的,好东西,除了常用功能之外,有利于自己网站优化。特别是在2015年6月,百度已实现全站https化,同时取消referer关键词显示之后,对于需要SEO的同学,百度统计就变得必不可少了!
CNZZ站长统计
国内最专业的统计工具,技术、功能强大,不多说,大家都用过。
2. 分享工具
分享工具是指在网页中加入“分享到”相关的按钮,可以分享到如微博、QQ、微信、人人等SNS的平台。站长只需在线生成相关代码就可以直接嵌入到网站中,可以通过用户的分享获得更多流量与曝光。
现在用的比较广泛的有百度分享、Jiathis、bShare三款。百度分享与Jiathis值得推荐:
百度分享
2011年百度推出百度分享,目前用户量庞大,加载速度不错。
除了与普通分享工具没有差别之外,最吸引站长使用百度分享的莫过于百度搜索结果的分享次数展现。
Jiathis分享
Jiathis可能是国内首款分享工具,用户量也是非常庞大,虽然没有百度搜索结果分享次数,但其能跟上潮流,在分享按钮中是较快有分享到“微信”选项的。
3. 文章智能推荐
文章智能推荐是在用户访问网页时为用户(转载自:www.dXf5.cOm 东星资源网:评论框代码)推荐相关或用户感兴趣的文章,而这个功能只需生成一行代码即可。据小编得知,目前主要有无觅、友荐、百度(百度真是无处不在啊!)等。
无觅
国内首款,用户最多,相对非常成熟的插件。
4. 表单工具
你肯定在很多网站见过在线调查之类的网页,自己想用的话可以利用第三方表单工具。第三方表单工具不仅可以用于用户调查反馈,还可以用于活动报名、收集订单、在线交流等,使用非常灵活,看自己需求吧。
表单工具比较成熟的有金数据、麦客。
5. 评论插件
可以实现文章评论功能,从此不怕被恶意刷评论了~
“网站评论框不再是冷冰冰的用户名和email,而是来自各大微博及社交网络的真实用户的言论,增加了交流氛围和乐趣。”——转自友言
目前有多说、友言、无觅、灯鹭等,推荐使用多说、友言。
6. 网站运营增值类插件
这类插件于2015年末出现的,主要的特性是面向对象广,能为网站添加功能,为用户发放福利,同时还能为网站增加收入的方式,这类插件目前最成熟的是「回收宝+」手机估值插件。
「回收宝+」手机估值插件(内弹窗样式)
目前中国电信、移动、联通、华为商城等企业、网站,举办活动时的「手机回收价格查询」、「手机回收」、「手机以旧换新」、「回收现金劵福利」等,都是使用「回收宝+」实现的,按行业的预估,手机回收有2000亿的市场,拥有这样巨大的市场前景,这款插件,作为独立栏目发展也是不为过的!小编相信这款插件接下来将会是大量网站、论坛运营发展的秘密武器。
以上是小编总结的站长运营必备插件代码,欢迎补充。