学习Android过程中一些小知识点的积累
1、tools:context="某个Activity名称" 这个属性通常在一个布局XML文件的根元素中设置,记录了这个布局关联到哪一个activity。
2、android:paddingBottom="10.0px" 是指控件中内容距离控件底边距离。
3、@+id/xyz 表示在修改完某个布局文件并保存后,系统会自动在R.java文件中生成相应的int类型变量,变量名就是"/"后面的值。例如,以上会在R.java文件中生成int xyz=value,其中value是一个十六进制的数。
@id/aaa 代表引用id列表里面的aaa的值。
4、android:onClick=" " 设置点击时从上下文中调用指定的方法,该属性值和调用的方法名完全一致。
5、android:layout_alignParentLeft="true" 某控件里有该代码,某控件相对于父控件左对齐。
6、android:hint=" " 输入框指定提示语,当你输入字符时该提示语就会消失。
7、视图是否显示
可见(visible)
XML文件:android:visibility="visible"
Java代码:view.setVisibility(View.VISIBLE);
不可见(invisible)
XML文件:android:visibility="invisible"
Java代码:view.setVisibility(View.INVISIBLE);
隐藏(GONE)
XML文件:android:visibility="gone"
Java代码:view.setVisibility(View.GONE);
8、android:weightSumt="1" 设置比例用的
9、android:src="@drawable/icon" 意思是使用drawable文件夹中的icon这个图片作为你当前使用的图片
10、android:inputType="textPersonName" 人名格式
android:inputType="textPassword" 密码格式
android:layout_below=" " 用于指定当前的控件在某个控件的下面
11、android:textAppearance="?android:attr/textAppearanceLarge" 用于Android控件中控制该控件中文字的外观
12、private static final int DB_VERSON=1; 数据库版本号,当程序第一次运行时,数据库被建立,如果你更改了数据库,如增加一个表,这时,这个值一般要改一下。这样程序再次安装运行时,数据库可自行升级。如果不改通常需要手动删除数据库。
13、execSQL()方法可以执行insert、delete、update、CREATE TABLE之类有更改行为的SQL语句。
rawQuery()方法用于执行select语句。
14、protectedvoidonCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
http://www.2cto.com/kf/201307/227935.html
15、ContentValues和Hash Table类似都是一种存储的机制。但是两者最大的区别就在于,contentValues只能存储基本类型的数据,像string,int之类的,不能存储对象这种东西,而Hash Table却可以存储对象。
在往数据库中插入数据的时候,首先应该有一个ContentValues对象,所以:
ContentValues initialValues=new ContentValues();
initialValues.put(key,values);
SQLiteDataBase sdb;
sdb.insert(database_name,null,initialValues); 插入成功就返回记录的id,否则返回-1.
16、例如查找一条数据使用的方法query中跟了8个参数。
public Cursor query(String table,String[] columns,String selection,String[] selectionArgs,String groupBy,String having,String orderBy,String limit);
上面String后面的单词分别代表:
table:数据库表的名称
columns:数据库列名称数组,写入后最后返回的Cursor中只能查到这里的列的内容
selection:查询条件
selectionArgs:查询结果
groupBy:分组列
having:分组条件
orderBy:排序列
limit:分页查询限制
17、moveToFirst() 将Cursor的游标移动到第一条
getColumnCount() 返回列的总数
getColumnIndex(String columnName) 返回制定列的名称,如果不存在返回-1
getColumnName(int columnIndex) 从给定的索引返回列名
getColumnNames() 返回一个字符串数组的列名
moveToLast() 将Cursor的游标移到最后一条
moveToNext() 将Cursor的游标移到下一条
move( int offset) 将Cursor的游标移到指定ID
moveToPrevious() 将Cursor的游标移到上一条
getCount() 得到Cursor总记录条数
isFirst() 判断当前游标是否为第一条记录
isLast() 判断当前游标是否为最后一条记录
getInt(int columnIndex) 根据列名称获得列索引ID
getString(int columnIndex) 根据索引ID拿到表中存在的字段
18、Android.util.log常用的方法有以下5个:
Log.v() 调试颜色为黑色,任何消息都会输出,这里的v代表verbose啰嗦的意思。平时使用就是Log.v(" ","")。
Log.d() 输出颜色是蓝色的,仅输出debug调试的意思,但它会输出上层的信息,过滤起来可以通过DDMS的Logcat标签来选择。
Log.i() 输出为绿色,一般提示性的消息information,它不会输出Log.v和Log.d的信息,但会显示i,w和e的信息。
Log.w() 输出为橙色,可以作为warming警告,一般需要我们注意优化Android代码,同时选择它还会输出Log.e的信息。
Log.e() 输出为红色,可以看作error错误,这里仅显示红色的错误信息,这些错误信息就需要我们认真的分析,查找栈的信息了。
19、SharedPreferences
http://blog.csdn.net/lyl278401555/article/details/50610790
20、Intent是不同组件之间相互通讯的纽带,封装了不同组件之间通讯的条件。Intent本身是定义为一个类别(Class),一个Intent对象表达一个目的(Goal)或期望(Exception),叙述其所期望的服务或动作、与动作有关的数据等。Android则根据此Intent对象之叙述,负责配对,找出相配的组件,然后将Intent对象传递给所找到的组件,Android的媒婆任务就完成了。
http://blog.csdn.net/zuolongsnail/article/details/6574211
21、getText().toString().trim() 功能是删除字符串首部和尾部的空格。
22、<span>是html中的一个标签,.java文件可以写但是只能写在javaDoc注解部分对一些信息设置提醒。
23、Toast:是Android中用来显示信息的一种机制,和Dialog不一样的是Toast是没有焦点的,而且Toast显示的时间有限,过一定的时间就会自动消失。
http://www.cnblogs.com/GnagWang/archive/2010/11/26/1888762.html
24、onResume是在启动activity启动之后才能执行的,也就是恢复执行。
程序正常启动:onCreate()——onStart()——onResume();
程序正常退出:onPause()——onStop()——onDestroy();
一个Activity启动另一个Activity:onPause()——onStop(),再返回:onRestart()——onStart()——onResume();
程序按back退出:onPause()——onStop()——onDestroy(),再进入:onCreate()——onStart()——onResume();
程序按home退出:onPause()——onStop(),再进入:onRestart()——onStart()——onResume();
25、当使用Eclipse开发Android应用的时候,当创建项目的时候,MainActivity自动继承的是Activity,而在使用Android Studio开发Android应用的时候,创建项目时,自动继承的是AppCompatActivity.
26、setContentView(R.layout.register);