Android_开发片段(Part 3)
1、Android中的五种布局方式:线性布局(Linear Layout)、相对布局(Relative Layout)、表格布局(Table Layout)、网格视图(Grid View)、标签布局(Tab Layout)、列表视图(List View)、绝对布局(AbsoluteLayout)。
2、使用Eclipse + BlueStacks调试Android应用时,假如没搜索到BlueStacks,则切换到DDMS透视图,点击下图中红色框中的小三角,选择“Reset adb”,重起刷新一下adb设备即可
3、在Android中,在AndroidManifest.xml中设置界面为横向时,在activity注册的地方,加上:android:screenOrientation="landscape" 是确定横向模式 即可
4、StringBuffer
1)添加内容
StringBuffer sb = new StringBuffer(); String user = “test”; String pwd = “123”; sb.append(“select * from userInfo where username=“) .append(user) .append(“ and pwd=”) .append(pwd);
2)StringBuffer与String的转化
StringBuffer和String属于不同的类型,也不能直接进行强制类型转换,下面的代码都是错误的: StringBuffer s = “abc”; //赋值类型不匹配 StringBuffer s = (StringBuffer)”abc”; //不存在继承关系,无法进行强转 StringBuffer对象和String对象之间的互转的代码如下: String s = “abc”; StringBuffer sb1 = new StringBuffer(“123”); StringBuffer sb2 = new StringBuffer(s); //String转换为StringBuffer String s1 = sb1.toString(); //StringBuffer转换为String
5、Android版本:
1)可以将2.3.3当做是2.3版本的延伸或者分支
2)2.2.x指2.2后面的版本
6、Android中,fill_parent,wrap_content,match_parent"的区别:
三个属性都用来适应视图的水平或垂直大小,一个以视图的内容或尺寸为基础的布局比精确地指定视图范围更加方便。
1)fill_parent
设置一个构件的布局为fill_parent将强制性地使构件扩展,以填充布局单元内尽可能多的空间。这跟Windows控件的dockstyle属性大体一致。设置一个顶部布局或控件为fill_parent将强制性让它布满整个屏幕。
2) wrap_content
设置一个视图的尺寸为wrap_content将强制性地使视图扩展以显示全部内容。以TextView和ImageView控件为例,设置为 wrap_content将完整显示其内部的文本和图像。布局元素将根据内容更改大小。设置一个视图的尺寸为wrap_content大体等同于设置 Windows控件的Autosize属性为True。
3)match_parent
Android2.2中match_parent和fill_parent是一个意思
.两个参数意思一样,match_parent更贴切,于是从2.2开始两个词都可以用。那么如果考虑低版本的使用情况你就需要用fill_parent了
7、如何去掉activity中的标题栏:
this.requestWindowFeature(Window.FEATURE_NO_TITLE); //去掉标题栏
8、控制EditText的输入的时候:
1)常用设置
android:hint="请输入数字!"//设置显示默认的提示信息
android:singleLine="true"//设置单行输入,一旦设置为true,则文字不会自动换行。
android:textColor = "#ff8c00"//字体颜色
android:textStyle="normal"//正常字体
="bold" //粗体
="italic"//斜体
="bold|italic"//粗体+斜体
android:capitalize = "characters"//输入内容为大写字母(注意:可以用inputType的某个属性代替)
android:textColorHighlight="#cccccc"//被选中文字的底色,默认为蓝色
android:textColorHint="#ffff00"//设置提示信息文字的颜色,默认为灰色
android:textScaleX="1.5"//控制字与字之间的间距
android:background="@null"//背景,这里没有,指透明
android:layout_gravity="center_vertical"//设置控件显示的位置:默认top,这里居中显示,还有bottom
android:gray="top" //多行中指针在第一行第一位置
android:capitalize //首字母大写
android:phoneNumber //输入电话号码
android:autoLink=”all” //设置文本超链接样式当点击网址时,跳向该网址
android:cursorVisible //设定光标为显示/隐藏,默认显示。
android:ems = "10" //设置TextView或者Edittext的宽度为10个字符的宽度。当设置该属性后,控件显示的长度就为10个字符的长度,超出的部分将不显示。
2)inputType常用设置
android:inputType="textCapCharacters" 字母大写
android:inputType="textCapWords" 首字母大写
android:inputType="textCapSentences" 仅第一个字母大写
android:inputType="textMultiLine" 多行输入
android:inputType="textPassword" 密码
android:inputType="number" 数字
android:inputType="numberSigned" 带符号数字格式
android:inputType="numberDecimal" 带小数点的浮点格式
android:inputType="datetime" 时间日期
android:inputType="date" 日期键盘
android:inputType="time" 时间键盘
3)常用的数字输入设置:
android:numeric="integer" //只可以输入正整数
android:numeric="decimal" //可以输入小数
android:numeric="signed" //表示可以输入整数(正整数或者负整数) android:inputType="numberDecimal" //可以输入小数,正小数(即只可以加一个小数点的正数)
android:maxLength="11" //最多可以输入11位数字
android:singleLine="true" //单行输入
android:password="true" //密码输入框,可以使得输入的内容在1秒内变成*字样 android:inputType="number" //设置只能输入数字(相当于是输入正整数),并且默认的弹出框是数字弹出框
4)EditText中,android:maxLines和android:minLines的区别:
例如:
android:maxLines="3" //使用maxLines的EditText最大行数为3行,当输入的内容超过3行后,它形
//状的大小不会根据输入内容的多少而改变,反正它显示的内容就是3行
//开始EditText里面没内容时,默认控件大小为1行
android:minLines="3" //使用minLines的EditText是至它至少显示3行内容(包括内容为空时)当输
//入的内容超过3行后,它形状的大小根据输入内容的多少而改变。
5)如何设置输入框只能输入指定的字符:
A:在EditText的XML中直接设置:
android:digits="0123456789xyzXYZ#*?" //引号里面输入你想设置的输入内容
B:使用Java代码设置:
EditText.setKeyListener(new NumberKeyListener() {
@Override
protected char[] getAcceptedChars() {
return new char[] { 'a', 'b', '3', '4', '5', '6', '7', '8','9', };
}
@Override
public int getInputType() {
// TODO Auto-generated method stub
return android.text.InputType.TYPE_CLASS_PHONE;
}
});
6)设置EditText是否可以输入内容的java代码:
1.直接对EditText进行设置
editText.setFocusable(false); // 此时不可以输入内容
2.利用手机软键盘是否可以启动进行设置(注:假如手机自带硬键盘,那这个方法就有问题了)
editText.setInputType(InputType.TYPE_NULL);来禁止手机软键盘。 editText.setInputType(InputType.TYPE_CLASS_TEXT);来开启软键盘。
9.
android:ems = "10"
设置TextView或者Edittext的宽度为10个字符的宽度。当设置该属性后,控件显示的长度就为10个字符的长度,超出的部分将不显示。
10、可以通过使用setTag()和getTag()来实现对某些控件的标识,进而在界面中同类控件比较多的时候,给事件的相应做个标识
详解:
11.context 、getApplicationContext() 、getBaseContext() 区别:
getApplicationContext() 返回应用的上下文,生命周期是整个应用,应用摧毁它才摧毁
Activity.this的context 返回当前activity的上下文,属于activity ,activity 摧毁他就摧毁
getBaseContext() 返回由构造函数指定或setBaseContext()设置的上下文
12.AdapterView
1)AdapterView为容器组件,其子元素内容是由Adaper所决定的
2)AdapterView的子视图对象: ListView,GridView,Spinner,Gallery
其中:
–ListView:以垂直滑动列表形式显示一组数据。
–Gallery:以水平滑动列表形式显示一组数据.
android:layout_marginRight="20dp" //距离右侧的距离
android:layout_marginLeft=“20dp” //距离右侧的距离
17、在android4.0之后,网络访问的部分已经不可以放到主线程当中了,否则就会报错(尽量使用多线程、异步加载的方式加载数据)
18、String类型转化为Int类型:
Integer.parseInt(String)
19、如何直接选择spinner的某一项的值?(比如sprinner下拉有5个选项,我想让他显示第三项的值)
spinner.setSelection(int, true); //显示第int-1项的内容
spinner.setSelection(1, true);//比如想显示第二项内容 spn_xzshuwutype.getSelectedItemId() //表示spinner选择的是第几项(int)
spn_xzqingjiatype.setVisibility(View.VISIBLE); 显示
spn_xzqingjiatype.setVisibility(View.GONE); 表示隐藏
spn_xzqingjiatype.setVisibility(View.INVISIBLE);不显示但也不隐藏
20、按照一定的符号进行字符串的拆分的时候的注意点:
String ss = "6////////////";
String[] s = StringUtils.split(ss,"/");
String[] sw =StringUtils.splitByWholeSeparatorPreserveAllTokens(ss, "/");
s.length 是1
sw.length 是13
s在使用前必须判断大小,不然就越界了
因此,建议使用第二个拆分方法!!!!!
Android_开发片段(Part 3)的更多相关文章
- Android_开发片段(Part 1)
1.maven环境配置时也跟java类似,进行我的电脑环境的设置,cmd查询:mvn -version 2.在新建AVD时,要注意AVD的版本(API),版本太低或者太高,经常不能运行项目或者在运行项 ...
- Android_开发片段(Part 2)
1.List和Map知识: 1)如何定义 List<Map<String,Object>> list=new ArrayList<Map<String,Object ...
- android_开发环境配置
在学习 Android 之前,需要配置开发环境. 我用的是 eclipse ,简单说下 eclipse 的 Android 的环境配置. 如果没有JDK得先下载:http://www.oracle.c ...
- Android_开发工具的下载和开发环境的搭建
一.Android开发工具的下载 Android开发者官网: http://developer.android.com/ Android开发工具:http://www.andro ...
- Android_开发人员经常使用的颜色
Android开发中经常要用一些个性化的颜色,然而茫茫的RBG颜色对比表,往往给人眼花缭乱的感觉,更别说从中轻易选出一两种比較惬意的颜色,以下我就总结一下开发中经常使用到的比較绚丽的颜色. 以下是经常 ...
- Web开发Flask框架学习笔记
Python 是一种跨平台的[计算机程序设计语言],是一种面向对象的动态类型语言,Python是纯粹的自由软件,源代码和解释器CPython遵循 GPL(GNU General Public Lice ...
- Android 学习资料入门到精通(PDF集合)共54本
最近收集一些安卓入门到精通,包含游戏编程,网络编程,多媒体开发,需要学习朋友就下载保持下来,下载链接在最下面 下面是网盘内容 14天学会安卓开发_(完整版).pdf Android 4 游戏高级编程 ...
- Android仿iPhone 滚轮控件 实现
Android_开发 实用滚轮效果选择数字http://blog.csdn.net/zhangtengyuan23/article/details/8653771 Android仿iPhone滚轮控件 ...
- js/jquery/html前端开发常用到代码片段
1.IE条件注释 条件注释简介 IE中的条件注释(Conditional comments)对IE的版本和IE非IE有优秀的区分能力,是WEB设计中常用的hack方法.条件注释只能用于IE5以上,IE ...
随机推荐
- 【MySQL】mysql查询强制大小写及替换字段
强制大小写 select * from test where name like BINARY '%Adc%' mysql替换字段 update test set name= REPLACE (nam ...
- 2019 牛客暑期多校 第一场 H XOR (线性基)
题目:https://ac.nowcoder.com/acm/contest/881/H 题意:求一个集合内所有子集异或和为0的长度之和 思路:首先集合内异或和,这是线性基的一个明显标志,然后我们不管 ...
- 【C#技术】一篇文章搞掂:Infragistics组件库
工具栏 // 按钮不可按 tool.SharedProps.Enabled = false; Grid // Grid中记录时间 // 建议SQL Server中使用字符字段(没有深入测试,只是字符字 ...
- 架构师技能树skill-map
# 架构师技能树 ## 系统架构能力 ### 基本理论- 扩展性设计- 可用性设计- 可靠性设计- 一致性设计- 负载均衡设计- 过载保护设计 ### 协议设计- 二进制协议- 文本协议 ### 接入 ...
- 75、python学习第一篇
1.sys包下边的argv方法,从控制台获取数据 ''' Created on 2017年4月8日 @author: weizhen ''' import sys One = [" * &q ...
- mybatis的sqlprovider用法扩展自定义sql
SqlProvider使用 public class MemberRewardSqlProvider { private static final Logger log = LoggerFactory ...
- POJ 1789 Truck History (Kruskal)
题目链接:POJ 1789 Description Advanced Cargo Movement, Ltd. uses trucks of different types. Some trucks ...
- upc组队赛5 Election of Evil【搜索】
Election of Evil 题目描述 Dylan is a corrupt politician trying to steal an election. He has already used ...
- mac下jmeter的安装
1.下载jmeter for jmeter 自行网络下载,也可以在我提供的网盘中下载 jmeter3.3链接:https://pan.baidu.com/s/1AVhZjKmN9s7AOxfyONeB ...
- 数据库(二)—— MySQL索引优化
目录 MySQL的索引优化 一.MySQL 5.7的初始化配置 二.MySQL配置文件 1.配置 2.配置文件作用 三.多实例 1.创建相关的目录 2.创建实例的配置文件 3.初始化 4.授权 5.启 ...