文档章节

android学习笔记(九)

Kaming
 Kaming
发布于 2014/09/26 16:29
字数 422
阅读 15
收藏 0
点赞 0
评论 0

一、EditText实现输入表情图像

SpannableString span=new SpannableString("d");
ImageSpan ims=new ImageSpan(BitmapFactory.decodeResource(getResources(), R.drawable.haha));
span.setSpan(ims, 0, 1, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
edt.append(span);

BitmapFactory.decodeResource()获取图片信息

Spanned.SPAN_EXCLUSIVE_EXCLUSIVE(前后都不包括)


二、 EditText特定字符限制与校验

android:digits="abc" 只能输入小写abc

android:inputType="number" 只能输入数字

CharSequence s1=edt.getText();
//android提供了检验字符串是否为空 TextUtils.isEmpty(s1)
if(TextUtils.isEmpty(s1)){
edt.setError("不能为空");
}


三、 AutoCompleteTextView自动输入

Adapter适配器,我们这里用的是ArrayAdapter

 auto=(AutoCompleteTextView) findViewById(R.id.autoCompleteTextView1);
 String[] arr={"you","you bad bad","I Love"};
 ArrayAdapter<String> adapt=new ArrayAdapter<String>(this, R.layout.layout_one, arr);
 auto.setAdapter(adapt);


四、Button的常用事件

public class MainActivity extends Activity implements OnClickListener,OnTouchListener,OnFocusChangeListener{
private Button btn1;
private Button btn2;
private int value=1;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        btn1=(Button) findViewById(R.id.button1);
        btn2=(Button) findViewById(R.id.button2);
        btn1.setOnClickListener(this);
        btn2.setOnClickListener(this);
        btn2.setOnTouchListener(this);
        btn2.setOnFocusChangeListener(this);
    }
    //这里完成点击Button,Button的图标随着便大便小
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Button bt=(Button)v;
int width=getWindow().getWindowManager().getDefaultDisplay().getWidth();
if(value==1&&bt.getWidth()>=width){
value=-1;
}else if(value==-1&&bt.getWidth()<100){
value=1;
}
bt.setWidth(bt.getWidth()+(int)(bt.getWidth()*0.1)*value);
bt.setHeight(bt.getHeight()+(int)(bt.getHeight()*0.1)*value);
}
//触摸事件,触摸 Button 变换Button的样式
@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
int action =event.getAction();
if(action==MotionEvent.ACTION_DOWN){
btn2.setBackgroundResource(R.drawable.chushi);
}else if(action==MotionEvent.ACTION_UP){
btn2.setBackgroundResource(R.drawable.bianhua);
}
//返回false 表示没有处理此事件 。返回true证明除了了此事件,如果事件被处理就不会回调其他的事件监听
return false;
}
//焦点事件
@Override
public void onFocusChange(View v, boolean hasFocus) {
// TODO Auto-generated method stub
if(hasFocus){
btn2.setBackgroundResource(R.drawable.chushi);
}else{
btn2.setBackgroundResource(R.drawable.bianhua);
}
}
    
}


五、ImageView

android:maxWidth=""

android:maxHieght=""

这两个属性要跟android:adjustViewBounds=""一起用,否则没有效果

android:scaleType="" 这个属性可以让图片如何缩放 ,和缩放后的位置

© 著作权归作者所有

共有 人打赏支持
Kaming
粉丝 1
博文 18
码字总数 10836
作品 0
深圳
Android 进阶学习笔记整理

一.android系统架构图及各层介绍 1. 应用层:应用是用java语言编写的运行在虚拟机上的程序,比如通讯录,日历,电话,短信,浏览器等。 2. 应用框架层:这一层是编写Google发布的核心应用时所...

FunCode
昨天
0
0
[Android学习笔记九] Android 开发中图片灰阶(黑白)显示

阅读本文之前关于将RGB颜色值转换为灰阶值的计算方法可参见: 三种算法转换彩色灰阶 http://aiilive.blog.51cto.com/1925756/1718960 灰阶显示图片的典型应用就是用户头像,如用户在线头像显...

secondriver
06/26
0
0
第一天学习Android的一些笔记

昨天学习了怎样装Android配置环境,下载SDK用了好久的时间,再加上一开始不会,弄了好长时间,今天第一天学习,跟着视频教程学的。下边是我的一些笔记,仅做留念与学习笔记 。 快捷键: 智能...

子弹兄
2014/01/16
0
0
android白盒测试所需其他安卓开发内容链接整理

Android Intent实现Activity之间跳转并传值:http://www.linuxidc.com/Linux/2011-04/34228.htm android Intent机制详解:http://www.oschina.net/question/56506567909 Android开发中Inten......

智能小松鼠
2014/12/18
0
0
深入理解Android写作背后的故事

本来是发表在《程序员》杂志的,结果编辑整理成一篇书评,内容和深度都大幅缩水,今天把原文post出来,希望能抛砖引玉。 我正式接触Android的准确时间应该在2010年9月份。那段时间,老听到公...

邓凡平
2012/10/14
0
20
android学习笔记8--------------数据的存储与访问(2)

转载注明出处:袁方的技术博客 http://blog.csdn.net/yf210yf 承接 android学习笔记6----------数据的存储与访问(1) 最后: Activity的设计。 效果图: import java.io.IOException;impor...

晨曦之光
2012/03/15
0
0
ViewSwitcher学习笔记

ViewSwitcher 的作用简单来说就是:在两个视图间转换时显示动画 它的两个子类应该很熟悉,ImageSwitcher:转换图片时增加动画效果; TextSwitcher: 转换文字时增加动画效果; API翻译 一、结构...

无一物
2012/12/20
0
0
Android adt bundle 开发环境配置及第一个“Hello world”程序运行

最近在学习Android 顺便记录下学习过程当作复习吧,这是写的第一篇正式博客。 一、jdk环境配置 二、android adt bundle 下载 三、安装SDK 四、模拟器及真机调试 五、第一个程序 Hello world!...

程序猿付显
2014/07/23
0
0
Android 单元测试链接整理

Android单元测试 http://blog.csdn.net/stevenhu223/article/details/8298858 通过JUnit进行Android单元测试:http://www.open-open.com/lib/view/open1328152424546.html 如何进行Android单......

智能小松鼠
2014/12/16
0
0
【Android学习总结】之Activity:深入理解、体验Activity的生命周期

【本博客内的文章是本人的学习笔记总结,如有错误请各位批评指正,谢谢!欢迎加入群285077071讨论】 关于Activity的生命周期的学习,我将从以下几个方面入手来全面认识: 一、什么是生命周期...

kinbos
06/26
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

IntelliJ IDEA 详细图解最常用的配置,适合刚刚用的新人。

刚刚使用IntelliJ IDEA 编辑器的时候,会有很多设置,会方便以后的开发,磨刀不误砍柴工。 比如:设置文件字体大小,代码自动完成提示,版本管理,本地代码历史,自动导入包,修改注释,修改...

kim_o
13分钟前
0
0
Google Java编程风格指南

目录 前言 源文件基础 源文件结构 格式 命名约定 编程实践 Javadoc 后记 前言 这份文档是Google Java编程风格规范的完整定义。当且仅当一个Java源文件符合此文档中的规则, 我们才认为它符合...

niithub
16分钟前
0
0
java.net.MalformedURLException异常说明

1.异常片段 Java代码中,在进行URL url = new URL(urllink)操作时,提示以下异常信息,该类异常主要问题出在参数urllink上面。 异常片段1 java.net.MalformedURLException at java.ne...

lqlm
16分钟前
0
0
CentOS7修改mysql5.6字符集

解决办法:CentOS7下修改MySQL数据库字符编码为UTF-8,UTF-8包含全世界所有国家所需要的字符集,是国际编码。 具体操作如下: 1.进入MySQL [root@tianqi-01 ~]# mysql -uroot -p Enter passw...

河图再现
17分钟前
0
0
DevExpress v18.1新版亮点——WPF篇(一)

用户界面套包DevExpress v18.1日前终于正式发布,本站将以连载的形式为大家介绍各版本新增内容。本文将介绍了DevExpress WPF v18.1 的新功能,快来下载试用新版本!点击下载>> Accordion Co...

Miss_Hello_World
20分钟前
0
0
Rancher 2.0集群与工作负载告警

Rancher 2.0操作指南。本文将step by step演示如何使用Rancher 2.0中集成的告警功能,包括设置通知程序、设置集群级别以及工作负载级别的告警。 在Rancher 1.x时期,告警功能是很多Rancher用...

RancherLabs
25分钟前
1
0
Python中字符串拼接的N中方法

python拼接字符串一般有以下几种方法: ①直接通过(+)操作符拼接 s = 'Hello'+' '+'World'+'!'print(s) 输出结果:Hello World! 使用这种方式进行字符串连接的操作效率低下,因为python中...

木头释然
26分钟前
9
0
JAVA排序之归并排序

归并排序思路就是不停拆分数组,直到拆成一个一个元素,之后将拆出来的元素按照拆分顺序反过来的顺序合并,出现前边值大于后边值,则换位置,放入临时数组,最后将临时数组覆盖原数组. public stat...

勤奋的蚂蚁
38分钟前
1
0
想要年薪20万,先看会不会这28个企业运维岗经典面试题

1、Linux如何挂载windows下的共享目录? mount.cifs //IP地址/server /mnt/server -o user=administrator,password=123456 linux 下的server需要自己手动建一个 后面的user与pass 是windows...

Py爱好
43分钟前
0
0
python的url分配

from django.conf.urls import url,include urlpatterns=[ url('xinwen/',include('xinwen.urls')) ] from django.urls import path from xinwen import views urlpatterns = [ path('login/......

南桥北木
46分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部