关于这个,我目前研究的控件还比较少,因为基本大操作方式都大同小异,搞清楚几个就差不多,至于其他,那只是时间问题
1.文本标签,文本输入框
TextView label = new TextView(this);
label.setText("名称:");
// 默认字体大小为16
label.setTextSize(16);
// 颜色默认为黑色
label.setTextColor(Color.BLACK);
// 创建输入框对象
EditText text = new EditText(this);
// 默认设置为单行显示
text.setSingleLine();
// 默认宽度为150
text.setWidth(150);
// 默认字体大小为16
text.setTextSize(16);
text.setTextColor(Color.BLACK);
// 如果配置了最大长度,那么进行设置
text.setFilters(new InputFilter[] { new InputFilter.LengthFilter(20) });
// 设置内容展示为密码形式
text.setTransformationMethod(new PasswordTransformationMethod());
2.按钮
Button button = new Button(this);
button.setText("提交");
button.setTextSize(16);
button.setTextColor(Color.BLACK);
3.按钮事件
为按钮增加事件,我相信这很简单,但是在安卓中,这里就存在一个问题,安卓不允许是主线程中执行耗时操作(例如从服务器上下载一个东西到本地),如果使用会发生异常:
Can't create handler inside thread that has not called Looper.prepare()
所以只能使用新的线程去操作,但是在非UI线程中,操作UI线程的东西又会报异常,这个很迷惑了我一些时间,后来通过在网上查找资料,最终总结出一种较为方便的办法,使用AsyncTask
button.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
// 定义一个异步任务处理对象,定义在下面
ButtonAsyncTask asyncTask = new ButtonAsyncTask();
// 执行这里的时候会依次调用下面的
// onPreExecute(同步)--> doInBackground(异步)--> onPostExecute(同步)
asyncTask.execute();
}
});
/**
* 按钮的异步执行机制
*
* @author pandong
* @date 2012-7-18 下午2:50:31
* @Copyright(c) SZKINGDOM
*/
private class ButtonAsyncTask extends AsyncTask<Void, Void, Object> {
@Override
protected void onPreExecute() {
//在同步线程中执行的代码
}
@Override
protected Object doInBackground(Void... params) {
//在异步线程中执行某些代码
return null;
}
@Override
protected void onPostExecute(Object result) {
//执行完后需要执行的代码
}
}
分享到:
相关推荐
一个Android环形的进度条控件,效果类似于360手机卫士,我是从AndBase框架中扒下来的,代码我写了注释,编码方式GBK
该资料是《Android高级编程》的源代码 对应的书籍资料见: Android高级编程 基本信息 原书名: Professional Android Application Development 原出版社: Wrox 作者: (英)Reto Meier 译者: 王鹏杰 霍建同 出版社...
本项目是一个简单的仿IOS日期控件的项目源码,但它又不仅仅是简单的选择,它还能通过选择的日期与时间计算出年龄和星座,小小的日期选择却给我们在选择过程中增添了很多趣味,项目代码很简洁就一个MainActivity,...
有时,原生控件可以通过复杂的编码实现想要的功能,这时候可以自定义控件来提高代码的可复用性。 如何自定义控件 下面我通过我在github上开源的Android-CalendarView项目为例,来介绍一下自定义控件的方法。该项目中...
一个Android九宫格手势图案解锁的控件,类似于Android系统自带的九宫格图案解锁,我写了注释,编码方式utf-8.
本项目是一款android连连看游戏,应该说这个游戏太强大了,能触屏连连看,过关。用到技术很多,有小算法,相同的icon就会消掉项目中代码层次分明,大部分方法都加了详细的注释。(项目采用GBK编码)。之前也有很多...
1.6 利用Android源代码 1.7 本书的示例项目 1.8 小结 第2章 设置开发环境 2.1 设置环境 2.1.1 下载JDK 6 2.1.2 下载Eclipse 3.6 2.1.3 下载Android SDK 2.1.4 命令行窗口 2.1.5 安装ADT...
将会支持 Google 可能发布的手机操作系统或者应用软件,共同开发名为 Android 的开放源代码的移动 系 统。 谷歌早在 2002 年就进入了移动领域,可是由于目前的手机操作系统企业和手机企业相对封闭,提高了 行业的...
1.6 利用Android源代码 1.7 本书的示例项目 1.8 小结 第2章 设置开发环境 2.1 设置环境 2.1.1 下载JDK 6 2.1.2 下载Eclipse 3.6 2.1.3 下载Android SDK 2.1.4 命令行窗口 2.1.5 安装ADT...
其实在Android中,使用控件除了在layout下的布局文件中实现之外,我们还可以通过在java文件中完全通过编码来实现,只不过完全使用编码的方式来驾驭我们的控件是不可取的,因为这增加了代码量,对外阅读不是太友好,...
4.按上图所示例子建好控件,“生成条形码”的代码如下: 其中需要注意BarcodeFormat参数,可以打开定义看到具体的编码方式,自己百度每种编码方式对输入的要求。 这里EAN_13编码要求是13位长度的数字,并且满足:把...
RecyclerView是一个大家常用的列表控件,在列表中不免会出现多种类型的布局,这时adapter中多种类型的判断就会充满着switch的坏味道,可怕的是需求变更,增加或修改新的类型时,所有的改动都在adapter中进行,没有一...
android 音乐歌曲显示控件单行滚动,直接从sd卡音乐同目录读取lyc格式歌词文件,解决各种编码中文乱码问题,使用 调用方法,lv_lyrics.changeCurrent(pos);// 根据进度更新当前位置,lv_lyrics.onDrag(seekBar....
本项目是一个带动画的饼图,本项目代码...测试的时候貌似在2.3.7跑不起来,用4.2测试的才截图,项目主页https://github.com/oneAcorn/cakeview编译版本4.4.2编码UTF-8依赖android-support-v7-appcompat已经一起打包了。
编码Android客户端代码说明 ##编译环境Android Studio 1.0.1,用gradle引用许多第三方库,第一次加载会有点慢,加载完成后要build一下(因为用了gradle,所以不支持eclipse )。 ##包说明 常见的基类和工具类 评论...
编码Android客户端代码说明 编译环境 Android Studio 3.1.3,根据variants选择编译企业版或个人版。修改gradle.properties.sample为gradle.properties并修改文件中keystore相关的环境变量,编译企业版的时候, DEV_...
4.按上图所示例子建好控件,“生成条形码”的代码如下: 其中需要注意BarcodeFormat参数,可以打开定义看到具体的编码方式,自己百度每种编码方式对输入的要求。 这里EAN_13编码要求是13位长度的数字,并且满足:把...
2015/2/5 星期四 Android应用开发-代码版本管理和实战 2015/2/6 星期五 android案例与项目—手机安全卫士 2015/2/7 星期六 android案例与项目—手机安全卫士 2015/2/8 星期日 2015/2/9 星期一 android案例与项目—...
2.View的基本用法 其实做这个东西还是很简单的,总体思路步骤如下: 1.准备一个Canvas。 2.向Canvas里面画几条斜杠。 3.向canvas里面画100个小点。 4.随机生成4个数字,然后画在canvas里面。 其实就是这么简单,没...
一个界面设计方面的例子,Android仿QQ微信登录界面效果,主要是基于对布局main.xml上控件的操作,模拟出了微信整体的登录界面样式和风格,包括了登录时的弹框和提示,以及文字变颜色等功能,是学习android手机界面...