Android -ui控件
一:TextView控件
TextView --》 View
1.创建TextView的两种方式:
1.1编写TextView类
TextView tv = new TextView(this);
1.2编写xml文件
<TextView
android:id="+id/text_view_id"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="@string/hello"/>
应用TextView控件:
TextView tv = (TextView)findViewById(R.id.text_view_id);
tv.setText(R.string.user_greeting);
2.TextView属性:
字体大小推荐使用sp作为单位;宽高属性推荐使用dp作为单位
改变样式:
2.1textView.setText(Html.fromHtml("<font color=blue>欢迎!</font>"));
2.2xml文件中添加样式
android:textSize="20sp"
android:textColor="#00FF00" //改变全部字体颜色
android:autoLink="all" //设置是否将文本为url链接/email/电话/map
2.3
String str = "欢迎收看系列课程";
// class SpannableStringBuilder implements CharSequence
SpannableStringBuilder style = new SpannableStringBuilder(str);
style.setSpan(new ForegroundColorSpan(Color.RED),0,6, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
style.setSpan(new ForegroundColorSpan(Color.GREEN),6,21, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
style.setSpan(new ForegroundColorSpan(Color.BLUE),21,34, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
//setText(CharSequence text)
tv.setText(style);
3.跑马灯效果:
android:ellipsize="marquee" //当文字过长时,控件如何显示
android:singleLine="true" //单行显示文字
android:focusable="true" //控件是否能够获取焦点
android:focusableInTouchMode="true" //是否在触摸模式下获得焦点
android:marqueeRepeatLimit="marquee_forever" //滚动重复次数
二:EditText控件
EditText --》 TextView --》 View --》 Object
1.去除EditText自动聚焦的方法:
<EditText
android:layout-width="0dp"
android:layout-height="0dp" />
2.属性设置
限制字符的输入数量:
android:maxLength="3"
多行文本框:
android:singleLine="false" //true为单行文本框
限制EditText输入信息:
android:inputType="number" //限制文本输入为数字
设置提示信息:
android:hint="我是EditText"
在EditText中显示图片:
android:drawableLeft="@drawable/title"
设置圆角:
android:background="@drawable/shape"
三:Button控件
Button --》 TextView
//button控件
btn1 = (Button) findViewById(R.id.btn1);
btn1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// System.out.println("你点击了按钮!");
Toast.makeText(MainActivity.this,"你点击了按钮!",Toast.LENGTH_SHORT)
.show();
}
});
//让多个button使用同一个listener
btn2 = (Button) findViewById(R.id.btn2);
btn1.setOnClickListener(listener);
btn2.setOnClickListener(listener);
private View.OnClickListener listener = new View.OnClickListener() {
@Override
public void onClick(View v) {
Button btn = (Button)v;
switch (btn.getId()){
case R.id.btn1:
Toast.makeText(MainActivity.this,"click me!",Toast.LENGTH_SHORT)
.show();
break;
case R.id.btn2:
System.out.println("你点击了Button2");
break;
}
}
};
四:intent
1.拨打号码
private Button mainBtn = null;
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mainBtn = (Button)findViewById(R.id.mainBtn);
main.setOnClickListener(listener);
}
private onClickListener listener = new onClickLister(){
public vold onClick(View v){
Intent intent = new Intent();
intent.setAction(Intent.ACTION_CALL); //拨打电话
intent.setData(uri.parse("tel:110"));
intent.setAction(Intent.ACTION_SENDTO);
intent.setData(uri.parse("smsto:110")); //发送短信
startActivity(intent);
}
};
AndroidManifest.xml中:
//解决拨打电话时的安全异常,
<users-permission android:name="android.permission.CALL_PHONE" />
Android -ui控件的更多相关文章
- android UI控件小记
1.关于text和drawableTop之类的间距 android:drawablePadding="10dp" 2.EditText属性 android:phoneNumber= ...
- Android UI控件----ExpandableListView的基本用法
ExpandableListView介绍 ExpandableListView的引入 ExpandableListView可以显示一个视图垂直滚动显示两级列表中的条目,这不同于列表视图(ListVie ...
- Android UI控件:TextView
TextVIew的属性详解 android:autoLink设置是否当文本为URL链接/email/电话号码/map时,文本显示为可点击的链接.可选值(none/web /email/phone/ma ...
- Android UI控件常用库汇总
现在App的开发已经是非常成熟,涌现了一大批开源的工具.这些项目能够提高我们的搬砖效率.以下是一些在开发中比较常使用的控件和库. ListView WaveSwipeRefreshLayout 水滴效 ...
- android 基础控件(EditView、SeekBar等)的属性及使用方法
android提供了大量的UI控件,本文将介绍TextView.ImageView.Button.EditView.ProgressBar.SeekBar.ScrollView.WebView ...
- ANDROID L——Material Design详解(UI控件)
转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持! Android L: Google已经确认Android L就是Android Lolli ...
- [Android] Android 让UI控件固定于底部的几种方法
Android 让UI控件固定于底部的几种方法1.采用linearlayout布局:android:layout_height="0dp" <!-- 这里不能设置fill_p ...
- Android开发之使用Handler刷新UI控件
一.为什么必须使用Handler 线程安全问题 这个问题要理解的话很容易,如果没有这个约束,那么同时有两个线程对一个UI控件进行调整,那么控件自然就没法正常的工作,而为了解决这种二义性(就是一个东西同 ...
- Android4.0 -- UI控件之 Menu 菜单的的使用(三)
上一讲 [Android 开发]:UI控件之 Menu 菜单的的使用(二) 我们讲解了创建上下文菜单的第一种使用方式:Creating a floating context menu [创建悬浮的上下 ...
随机推荐
- Flutter 实际开发常用工具类(全局提示,请求封装,token缓存,验证码倒计时、常用窗帘动画及布局)
介绍: 一星期从入门到实际开发经验分享及总结 代码传送门github Flutter是谷歌的移动UI框架,可以快速在iOS和Android上构建高质量的原生用户界面.未来App开发 ...
- APP性能
一.APP性能维度分析 APP类型众多,根据具体类型划分,性能指标的维度和优先级各不相同.视频类APP归属于娱乐游戏型的APP,因此性能测试维度优先级排序为:流畅度.crash.内存.流量.响应时长 ...
- Docker实战部署应用——Redis
Redis 部署 拉取Redis镜像 docker pull redis 创建Redis容器 docker run -id --name=sun_redis -p 6379:6379 redis 客户 ...
- 05.Linux-CentOS系统本地Yum源搭建
CentOS系统 1.挂载镜像光盘[root@localhost ~]# mount /dev/sr0 /media/cdrom/ 2.创建本地yum源仓库[root@localhost ~]# cd ...
- 82-基于Xilinx Virtex-5LXT FPGA的四路光纤PCIE卡(4路光纤卡)
基于Xilinx Virtex-5LXT FPGA的四路光纤PCIE卡(4路光纤卡) 1.板卡特点: 1) 主芯片采用Xilinx Virtex-5LXT FPGA. 前面板提供4路光纤接口,速率可 ...
- Linux性能优化从入门到实战:12 内存篇:Swap 基础
内存资源紧张时,可能导致的结果 (1)OOM 杀死大内存CPU利用率又低的进程(系统内存耗尽的情况下才生效:OOM 触发的时机是基于虚拟内存,即进程在申请内存时,如果申请的虚拟内存加上服务器实际已用的 ...
- 【CF】38E Let's Go Rolling! (dp)
前言 这题还是有点意思的. 题意: 给你 \(n\) (\(n<=3000\)) 个弹珠,它们位于数轴上.给你弹珠的坐标 \(x_i\) 在弹珠 \(i\) 上面花费 \(C_i\) 的钱 可以 ...
- php内置函数分析之trim()
官方手册中: 类似函数还有两个:ltrim() 和 rtrim().分别处理字符串的左侧.右侧. trim()的具体实现位于:ext/standard/string.c /* {{{ proto st ...
- bzoj4399 魔法少女LJJ 线段树合并+线段树二分+并查集
题目传送门 https://lydsy.com/JudgeOnline/problem.php?id=4399 题解 毒瘤题 \(9\) 种操作还有支持动态图的连通性 仔细读题 $ c<=7$. ...
- [BZOJ] IOI2015 Boxes纪念品盒
问题描述 IOI2015 开幕式正在进行最后一个环节.按计划在开幕式期间,每个代表队都将收到由主办方发放的一个装有纪念品的盒子.然而所有志愿者都被精彩的开幕式所吸引,除 Aman外其他人完全忘记了发放 ...