- 浏览: 67133 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
xiangxm:
xurichusheng 写道一些涉及到密码保存的就需要加密/ ...
3DES加密 -
xurichusheng:
一些涉及到密码保存的就需要加密/解密了。不需要解密的密码,如登 ...
3DES加密
由于时间关系,这里就不一一整理,不断更新
Activity就是形象的说就是一个容器,在里面放置各种控件(按钮,文本,复选框等),就形成了软件的界面~
Activity是可见的,如果不加任何控件的话,那么就像Windows中的空白窗体一样
通过Public Class activity01 extends Activity{}来创建一个activity01的Activity类,如图所示即是一个Activity
@string/app_name -->string.xml 文件中
<string name=""></string>
xmlns:android......表示命名空间
<application></application> 这个标签声明了应用程序的标签及其属性,xml文件中只能出现一次。
安卓的几种布局方式:
Linearlayout 线性布局
Relativelayout 相对布局
FrameLayout 框架布局
TableLayout 表格布局
android:layout_gravity="center"
android:gravity="center" 这两个区别?
一个应用程序可以有多个Activity,每个Activity是同级别的,
<intent-filter> 这个标签位于<activity></activity>内部 。
<action android:name="android.intent.action.MAIN" /> 决定最先启动谁
<category android:name="android.intent.category.LAUNCHER" /> 决定应用程序是否显示在程序列表里
<category android:name="android.intent.category.DEDAULT" /> 缺省情况下是什么?
</intent-filter>
startActivity(StartActivity.this, NetService.class)) 一个activity去调用另外一个activity
打印异常信息:Log.d("++++++++++++++++++++++",e.toString());
总结一下这几个周期方法的作用:
onCreate():创建Activity调用,用于Activity的初始化,还有个Bundle类型的参数,可以访问以前存储的状态。
onStart():Activity在屏幕上对用户可见时调用
onResume():Activity开始和用户交互的时候调用,这时该Activity是在Activity栈的顶部。
onPause():Activity被暂停时调用,也就是你要对你能看到的这个Activity说byebye的时候调用,这里可以做一些清理和保存工作
onStop():Activity被停止或者Activity变成不可见时调用
onDestroy():Activity被从内存中移除,一般发生在执行finish方法时或者Android回收内存的时候
Activity就是被用来进行与用户交互和用来与android内部特性交互的组件,
在应用程序中用到的所有activity都需要在manifest.xml文件中进行注册
R.java文件:
R.java 就是根据资源文件夹 res 生成的 ,R.java 里放的就是 res 中资源文件索引,用一个常量标记 res 中的一个资源文件
drable文件夹下存放图片,根据文件夹名字存放不同密度的图片。
安卓支持通过xml生成视图. R.java 不能修改,他是通过res文件夹下的xml文件生成的。
btnLogin = (Button) this.findViewById(R.id.user_login_btn); -------->这里需要注意this.findViewById() ;方法
根据id找到控件完成初始化,
android:layout_marginTop="10dp" 表示距离上方组件的距离
距离上方的距离,如果上方有组建就是指该组件,你的组建就会在你上面那个组建的下面,
你应该用这个属性:android:layout_alignTop="@id/某个组件",
这样你的组建就在这个组件的上面了,然后再距离这个多少距离就好了
<EditText
1、属性中设置其为透明
android:background="@android:color/transparent"
values文件夹中的colors.xml 文件配置
<color name="transparent">#00000000</color>
2、属性
android:ems="20"设置TextView的宽度为n个字符的宽度
<Button 属性
android:layout_gravity="center_horizontal"设置button水平居中相对于Container 来说
区别于属性:android:gravity="center_horizontal"设置button水平居中,相对于View组件的对齐方式。
比较两个属性的区别:
android:layout_height="wrap_content"根据文本来适应
android:layout_height="fill_content"根据屏幕来适应
安卓中的项目文件作用简介:
gen 存放R.java, 有插件自动生成;
bin 存放class文件,由Eclipse自动编译生成;
res 存放资源,如布局文件、动画文件、图片、xml文件,如strings.xml等等
res下一般有多个文件文件:anim 存放动画文件
drawable 存放图片、selector等
drawable-hdpi 对应高密度屏的图片
drawable-mdpi 对应中密度屏的图片
drawable-ldpi 对应低密度屏的图片
values 存放attrs.xml、strings.xnl、ids.xml、styles.xml等等
Android关于LinearLayout的设置问题
对于 LinearLayout
当 android:orientation="vertical" 时, 只有水平方向的设置才起作用,垂直方向的设置不起作用。即:left,right,center_horizontal 是生效的。
当 android:orientation="horizontal" 时, 只有垂直方向的设置才起作用,水平方向的设置不起作用。即:top,bottom,center_vertical 是生效的。
TextView 中的文字居中显示:
android:gravity="center"
此属性表示该控件在谁的上面和下面:
android:layout_below="@id/sales_orderlayout"
android:layout_above="@id/sales_layoutbottom"
关于Context:
Context提供了关于应用环境全局信息的接口
NameValuePair:
BasicNameValuePair
http协议应用层协议。
其中两个特点:
无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。
无状态:HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。
textview 设置显示的文字的行距:android:lineSpacingExtra="10dp"
listView 显示背景出现黑色 , 修改代码:android:cacheColorHint="#00000000"
Inflater和findViewById() 的区别:
/**
* Inflater英文意思是膨胀,在Android中应该是扩展的意思吧。 LayoutInflater的作用类似于
* findViewById(),不同点是LayoutInflater是用来找layout文件夹下的xml布局文件,并且实例化! 而
* findViewById()是找具体某一个xml下的具体 widget控件(如:Button,TextView等)。
*/
// LayoutInflater的作用是,把一个View的对象与XML布局文件关联并实例化
LayoutInflater inflater = (LayoutInflater) listviewActivity.this
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
// LayoutInflater的作用是,把一个View的对象与XML布局文件关联并实例化
View itemView = inflater.inflate(R.layout.listview_item, null);
// View的对象实例化之后,可以通过findViewById()查找布局文件中的指定Id的组件
TextView title = (TextView) itemView.findViewById(R.id.txttitle);
TextView text = (TextView) itemView.findViewById(R.id.txtContent);
xml文件包含其他的xml文件:
指定id
<include
android:id="@+id/test5"
layout="@layout/userloginactivity" />
不指定id
<include layout="@layout/layout_resource"/>
设置EditText中输入的文字起始位置:
android:paddingLeft="15dp"
开关按钮:
<ToggleButton
android:layout_width="80dp"
android:layout_height="50dp"
android:layout_marginTop="30dp"
android:layout_marginLeft="20dp"
android:checked="true"
android:textOff="OFF"
android:textOn="ON" />
设置listview选中时的背景颜色:
http://www.yoyong.com/archives/224
按钮设置属性:一个按钮在另外一个按钮的左边或者右边:
android:layout_toRightOf ="@+id/choosetable"
activity里面点击空白区域,软键盘消失:
// 点击空白处 软键盘消失
@Override
public boolean onTouchEvent(MotionEvent event) {
InputMethodManager imm = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE );
return imm.hideSoftInputFromWindow( this.getCurrentFocus().getWindowToken(), 0);
}
背景设置透明:
this.getWindow().setBackgroundDrawableResource(R.color.transparent);
requestWindowFeature(Window. FEATURE_NO_TITLE);
src目录是源文件
res文件目录下包括:
|--gen目录是adt自动生成,里面包括R.java文件,此文件不能修改,这个文件时根据资源文件夹res
生成的,R.java里面存放的是res资源文件的索引,用一个常量标记res中的文件,便于我们引用
|--drawable 文件夹是存放图片的,分为高中低密度的图片
|--layout目录,存放布局文件,安卓支持通过xml生成视图
|--values文件夹存放我们经常使用的颜色值,字符串,数组等。
xml文件:
android:orientation="vertical" 表示垂直排列
安卓中的几种布局方式:
LinearLayout 线性布局
RelativeLayout 相对布局
TableLayout 表格布局
FrameLayout 帧布局
一个activity在启动的时候会执行:
onCreate()->onStart()->onResume()
结束离开的时候会执行:
onPause()->onStop()->onDestroy()
onCreate() 准备activity的一些资源,onResume() 进行一定的调整
onPause()做一些清洁保存工作
1. onCreate():创建Activity调用,用于Activity的初始化,还有个Bundle类型的参数,可以访问以前存储的状态。
2. onStart():Activity在屏幕上对用户可见时调用
3. onResume():Activity开始和用户交互的时候调用,这时该Activity是在Activity栈的顶部。
4. onPause():Activity被暂停时调用,也就是你要对你能看到的这个Activity说byebye的时候调用,这里可以做一些清理和保存工作
5. onStop():Activity被停止或者Activity变成不可见时调用
6. onDestroy():Activity被从内存中移除,一般发生在执行finish方法时或者Android回收内存的时候
activity生命周期演示图:
android:id="@+id/text_view"表示的含义:
在main.xml的TextView中加入android:id="@+id/text_view"就可以为该TextView分配一个id。。这里@+id/是表示在R类的id类下新增常量字段,这里的常量字段是text_view。
这里说一下度量单位。度量单位有很多,如px,pt,dip,sp等等。不过建议应该使用sp作为字体大小的单位,使用dip作为其他元素的单位。。因为sp是刻度无关的像素,更重要的是他可以根据用户的字体大小的首选项进行缩放,这才是重要的,这样当你调整了整体的字体大小时不至于使得个别字体的大小不一致而影响美观。
实现跑马灯效果的时候最好加上android:singleLine="true"单行展示。。
EditText:
EditText是一个非常重要的组件,可以说它是用户和Android应用进行数据传输窗户,有了它就等于有了一扇和Android应用传输的门,通过它用户可以把数据传给Android应用,然后得到我们想要的数据。
android:hint来设置当EditText内容为空时显示的文本,这个文本只在EditText为空时显示,你输入字符的时候就消失了,不影响你的EditText的文本
android:maxLength=“4”就表示最多能输入4个字符,再多了就输入不进去了。
android:textColorHint="#238745"设置颜色
android:enabled="false" 设置edittext为不可编辑
android:password="true" 表示输入密码
在安卓中没有专门的文本域控件,我们可以将EditText设置成类似于文本域控件的。
做法:将:android:layout_height ="wrap_content"-->改成:android:layout_height = "200dip"
android:phoneNumber="true"就可以把EditText变成只接受电话号码输入的文本框,连软键盘都已经变成拨号专用软键盘了,所以不用再担心输入其他字符了。
android:numeric来控制输入的数字类型,一共有三种分别为integer(正整数)、signed(带符号整数)和decimal(浮点数)。eg:android:numeric="signed"/>
android:inputType来设置文本的类型,让输入法选择合适的软键盘的。
eg:android:inputType="date"
Android也为我们提供的这样的功能。通过设置android:imeOptions来改变默认的“完成”文本。这里举几个常用的常量值:
1. actionUnspecified 未指定,对应常量EditorInfo.IME_ACTION_UNSPECIFIED.效果:
2. actionNone 没有动作,对应常量EditorInfo.IME_ACTION_NONE 效果:
3. actionGo 去往,对应常量EditorInfo.IME_ACTION_GO 效果:
4. actionSearch 搜索,对应常量EditorInfo.IME_ACTION_SEARCH 效果:
5. actionSend 发送,对应常量EditorInfo.IME_ACTION_SEND 效果:
6. actionNext 下一个,对应常量EditorInfo.IME_ACTION_NEXT 效果:
7. actionDone 完成,对应常量EditorInfo.IME_ACTION_DONE 效果:
intent是描述应用想要做什么。
activity:一个activity就是一个单独的屏幕,一个活动就是一个独立的类,继承制基类。
当一个屏幕打开后前一个屏幕将会暂停,保存在堆栈中。所有的acitivity类继承自android.app.Activity类。
在intent的描述结构中,有两个重要的部分:动作和对应的数据,典型的动作类型有:VIEW,PICK,EIDIT,而动作对应的据则以uri的形式表示,与之有关系的一个类是intentfilter,用于描述一个activity可以操作那些intent,一个intentfilter需要子啊AndroidManifest.xml中进行定义。
Servise:一段长生命周期的,没有用户界面的程序。
SQLite作为系统的DB
在安卓中每一个应用都运行在自己的进程中,要想实现数据共享和传输使用ContentProvider来完成、
Dalvik虚拟机
Dalvik 是基于寄存器的,JVM是基于栈的,前者对于更大程序来说话费的时间更短。
Dalvik允许在有限的内存中同时运行多个虚拟机实例。
安卓上的class文件需要链接成dex文件后才能在dalvik上运行。class文件不能直接运行在Dalvik上(dex文件安卓平台的可执行文件)。
JAR文件,JAR的含义为Java ARchive.
adb:
快速更新设备或手机模拟器中的代码,如应用或者安卓系统升级
在设备上运行shell命令
管理设备或手机手机模拟器上预订端口
在设备或者手机模拟器上复制,粘贴文件
adb常用操作:安装应用到模拟器,
Android 的用于传给集合控件(ListView,Spinner,GridView 等)的数据都是以 Adapter 的形势,这样的好处就是只要掌握了 Adapter ,就可以很随意的给这些集合控制传递数据,因为他们使用的都是 Adapter 。
<ImageView <TextView 等控件属性
android:layout_alignParentRight="true" 属性表示存放的位置(右端)。
android:layout_alignParentLeft="true" 左端
< GridView 及其属性:
<GridView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/gridview"
android:layout_width= "fill_parent"
android:layout_height= "fill_parent"
android:columnWidth="90dp" 列宽度
android:numColumns="auto_fit" 自动匹配填充
android:horizontalSpacing= "10dp" 水平间距
android:verticalSpacing= "10dp" 垂直间距
android:stretchMode="columnWidth" 匹配模式 根据列宽自动缩放
android:gravity="center"> 位于中部
</GridView>
单选按钮放在<RadioGroup >标签中,<spinner表示下拉框
wrap_content」(包住内容)
查看帮助文档:
离线文件
当你处于没有网路连接的情况下时,也可以找到Android 文件参考。在下载了
android-sdk
后,将之解压缩,你可以在「android-sdk/docs」目录中
(android_sdk/docs/reference/view-gallery.html)
,找到一份与线上文件相同的文件参
考。
protected void onCreate(Bundle savedInstanceState) {
super. onCreate(savedInstanceState);
setContentView(R.layout. activity_main);
...
}
当Android 应用程序启动、换到背景等待、关闭时,都会用到"savedInstanceState"这
个实体来处理记忆体相关的事宜。
"Bundle"可以保存程序上一次关闭(冻结)时的状态。你可以透过覆写onFreeze 方法(与
onCreate 方法的作用类似) 来保存冻结前的状态。当程序启动(Activity 重新初始化)时,
会再次呼叫onCreate 方法,你就能从savedInstanceState 中得到前一次冻结的状态。我们
也可以透过"Bundle"来将这个Activity 的内容传到下一个Activity 中。
classes.dex 他是给android的java虚拟机Dalvik运行的字节码文件。
后续......
Activity就是形象的说就是一个容器,在里面放置各种控件(按钮,文本,复选框等),就形成了软件的界面~
Activity是可见的,如果不加任何控件的话,那么就像Windows中的空白窗体一样
通过Public Class activity01 extends Activity{}来创建一个activity01的Activity类,如图所示即是一个Activity
@string/app_name -->string.xml 文件中
<string name=""></string>
xmlns:android......表示命名空间
<application></application> 这个标签声明了应用程序的标签及其属性,xml文件中只能出现一次。
安卓的几种布局方式:
Linearlayout 线性布局
Relativelayout 相对布局
FrameLayout 框架布局
TableLayout 表格布局
android:layout_gravity="center"
android:gravity="center" 这两个区别?
一个应用程序可以有多个Activity,每个Activity是同级别的,
<intent-filter> 这个标签位于<activity></activity>内部 。
<action android:name="android.intent.action.MAIN" /> 决定最先启动谁
<category android:name="android.intent.category.LAUNCHER" /> 决定应用程序是否显示在程序列表里
<category android:name="android.intent.category.DEDAULT" /> 缺省情况下是什么?
</intent-filter>
startActivity(StartActivity.this, NetService.class)) 一个activity去调用另外一个activity
打印异常信息:Log.d("++++++++++++++++++++++",e.toString());
总结一下这几个周期方法的作用:
onCreate():创建Activity调用,用于Activity的初始化,还有个Bundle类型的参数,可以访问以前存储的状态。
onStart():Activity在屏幕上对用户可见时调用
onResume():Activity开始和用户交互的时候调用,这时该Activity是在Activity栈的顶部。
onPause():Activity被暂停时调用,也就是你要对你能看到的这个Activity说byebye的时候调用,这里可以做一些清理和保存工作
onStop():Activity被停止或者Activity变成不可见时调用
onDestroy():Activity被从内存中移除,一般发生在执行finish方法时或者Android回收内存的时候
Activity就是被用来进行与用户交互和用来与android内部特性交互的组件,
在应用程序中用到的所有activity都需要在manifest.xml文件中进行注册
R.java文件:
R.java 就是根据资源文件夹 res 生成的 ,R.java 里放的就是 res 中资源文件索引,用一个常量标记 res 中的一个资源文件
drable文件夹下存放图片,根据文件夹名字存放不同密度的图片。
安卓支持通过xml生成视图. R.java 不能修改,他是通过res文件夹下的xml文件生成的。
btnLogin = (Button) this.findViewById(R.id.user_login_btn); -------->这里需要注意this.findViewById() ;方法
根据id找到控件完成初始化,
android:layout_marginTop="10dp" 表示距离上方组件的距离
距离上方的距离,如果上方有组建就是指该组件,你的组建就会在你上面那个组建的下面,
你应该用这个属性:android:layout_alignTop="@id/某个组件",
这样你的组建就在这个组件的上面了,然后再距离这个多少距离就好了
<EditText
1、属性中设置其为透明
android:background="@android:color/transparent"
values文件夹中的colors.xml 文件配置
<color name="transparent">#00000000</color>
2、属性
android:ems="20"设置TextView的宽度为n个字符的宽度
<Button 属性
android:layout_gravity="center_horizontal"设置button水平居中相对于Container 来说
区别于属性:android:gravity="center_horizontal"设置button水平居中,相对于View组件的对齐方式。
比较两个属性的区别:
android:layout_height="wrap_content"根据文本来适应
android:layout_height="fill_content"根据屏幕来适应
安卓中的项目文件作用简介:
gen 存放R.java, 有插件自动生成;
bin 存放class文件,由Eclipse自动编译生成;
res 存放资源,如布局文件、动画文件、图片、xml文件,如strings.xml等等
res下一般有多个文件文件:anim 存放动画文件
drawable 存放图片、selector等
drawable-hdpi 对应高密度屏的图片
drawable-mdpi 对应中密度屏的图片
drawable-ldpi 对应低密度屏的图片
values 存放attrs.xml、strings.xnl、ids.xml、styles.xml等等
Android关于LinearLayout的设置问题
对于 LinearLayout
当 android:orientation="vertical" 时, 只有水平方向的设置才起作用,垂直方向的设置不起作用。即:left,right,center_horizontal 是生效的。
当 android:orientation="horizontal" 时, 只有垂直方向的设置才起作用,水平方向的设置不起作用。即:top,bottom,center_vertical 是生效的。
TextView 中的文字居中显示:
android:gravity="center"
此属性表示该控件在谁的上面和下面:
android:layout_below="@id/sales_orderlayout"
android:layout_above="@id/sales_layoutbottom"
关于Context:
Context提供了关于应用环境全局信息的接口
NameValuePair:
BasicNameValuePair
http协议应用层协议。
其中两个特点:
无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。
无状态:HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。
textview 设置显示的文字的行距:android:lineSpacingExtra="10dp"
listView 显示背景出现黑色 , 修改代码:android:cacheColorHint="#00000000"
Inflater和findViewById() 的区别:
/**
* Inflater英文意思是膨胀,在Android中应该是扩展的意思吧。 LayoutInflater的作用类似于
* findViewById(),不同点是LayoutInflater是用来找layout文件夹下的xml布局文件,并且实例化! 而
* findViewById()是找具体某一个xml下的具体 widget控件(如:Button,TextView等)。
*/
// LayoutInflater的作用是,把一个View的对象与XML布局文件关联并实例化
LayoutInflater inflater = (LayoutInflater) listviewActivity.this
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
// LayoutInflater的作用是,把一个View的对象与XML布局文件关联并实例化
View itemView = inflater.inflate(R.layout.listview_item, null);
// View的对象实例化之后,可以通过findViewById()查找布局文件中的指定Id的组件
TextView title = (TextView) itemView.findViewById(R.id.txttitle);
TextView text = (TextView) itemView.findViewById(R.id.txtContent);
xml文件包含其他的xml文件:
指定id
<include
android:id="@+id/test5"
layout="@layout/userloginactivity" />
不指定id
<include layout="@layout/layout_resource"/>
设置EditText中输入的文字起始位置:
android:paddingLeft="15dp"
开关按钮:
<ToggleButton
android:layout_width="80dp"
android:layout_height="50dp"
android:layout_marginTop="30dp"
android:layout_marginLeft="20dp"
android:checked="true"
android:textOff="OFF"
android:textOn="ON" />
设置listview选中时的背景颜色:
http://www.yoyong.com/archives/224
按钮设置属性:一个按钮在另外一个按钮的左边或者右边:
android:layout_toRightOf ="@+id/choosetable"
activity里面点击空白区域,软键盘消失:
// 点击空白处 软键盘消失
@Override
public boolean onTouchEvent(MotionEvent event) {
InputMethodManager imm = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE );
return imm.hideSoftInputFromWindow( this.getCurrentFocus().getWindowToken(), 0);
}
背景设置透明:
this.getWindow().setBackgroundDrawableResource(R.color.transparent);
requestWindowFeature(Window. FEATURE_NO_TITLE);
src目录是源文件
res文件目录下包括:
|--gen目录是adt自动生成,里面包括R.java文件,此文件不能修改,这个文件时根据资源文件夹res
生成的,R.java里面存放的是res资源文件的索引,用一个常量标记res中的文件,便于我们引用
|--drawable 文件夹是存放图片的,分为高中低密度的图片
|--layout目录,存放布局文件,安卓支持通过xml生成视图
|--values文件夹存放我们经常使用的颜色值,字符串,数组等。
xml文件:
android:orientation="vertical" 表示垂直排列
安卓中的几种布局方式:
LinearLayout 线性布局
RelativeLayout 相对布局
TableLayout 表格布局
FrameLayout 帧布局
一个activity在启动的时候会执行:
onCreate()->onStart()->onResume()
结束离开的时候会执行:
onPause()->onStop()->onDestroy()
onCreate() 准备activity的一些资源,onResume() 进行一定的调整
onPause()做一些清洁保存工作
1. onCreate():创建Activity调用,用于Activity的初始化,还有个Bundle类型的参数,可以访问以前存储的状态。
2. onStart():Activity在屏幕上对用户可见时调用
3. onResume():Activity开始和用户交互的时候调用,这时该Activity是在Activity栈的顶部。
4. onPause():Activity被暂停时调用,也就是你要对你能看到的这个Activity说byebye的时候调用,这里可以做一些清理和保存工作
5. onStop():Activity被停止或者Activity变成不可见时调用
6. onDestroy():Activity被从内存中移除,一般发生在执行finish方法时或者Android回收内存的时候
activity生命周期演示图:
android:id="@+id/text_view"表示的含义:
在main.xml的TextView中加入android:id="@+id/text_view"就可以为该TextView分配一个id。。这里@+id/是表示在R类的id类下新增常量字段,这里的常量字段是text_view。
这里说一下度量单位。度量单位有很多,如px,pt,dip,sp等等。不过建议应该使用sp作为字体大小的单位,使用dip作为其他元素的单位。。因为sp是刻度无关的像素,更重要的是他可以根据用户的字体大小的首选项进行缩放,这才是重要的,这样当你调整了整体的字体大小时不至于使得个别字体的大小不一致而影响美观。
实现跑马灯效果的时候最好加上android:singleLine="true"单行展示。。
EditText:
EditText是一个非常重要的组件,可以说它是用户和Android应用进行数据传输窗户,有了它就等于有了一扇和Android应用传输的门,通过它用户可以把数据传给Android应用,然后得到我们想要的数据。
android:hint来设置当EditText内容为空时显示的文本,这个文本只在EditText为空时显示,你输入字符的时候就消失了,不影响你的EditText的文本
android:maxLength=“4”就表示最多能输入4个字符,再多了就输入不进去了。
android:textColorHint="#238745"设置颜色
android:enabled="false" 设置edittext为不可编辑
android:password="true" 表示输入密码
在安卓中没有专门的文本域控件,我们可以将EditText设置成类似于文本域控件的。
做法:将:android:layout_height ="wrap_content"-->改成:android:layout_height = "200dip"
android:phoneNumber="true"就可以把EditText变成只接受电话号码输入的文本框,连软键盘都已经变成拨号专用软键盘了,所以不用再担心输入其他字符了。
android:numeric来控制输入的数字类型,一共有三种分别为integer(正整数)、signed(带符号整数)和decimal(浮点数)。eg:android:numeric="signed"/>
android:inputType来设置文本的类型,让输入法选择合适的软键盘的。
eg:android:inputType="date"
Android也为我们提供的这样的功能。通过设置android:imeOptions来改变默认的“完成”文本。这里举几个常用的常量值:
1. actionUnspecified 未指定,对应常量EditorInfo.IME_ACTION_UNSPECIFIED.效果:
2. actionNone 没有动作,对应常量EditorInfo.IME_ACTION_NONE 效果:
3. actionGo 去往,对应常量EditorInfo.IME_ACTION_GO 效果:
4. actionSearch 搜索,对应常量EditorInfo.IME_ACTION_SEARCH 效果:
5. actionSend 发送,对应常量EditorInfo.IME_ACTION_SEND 效果:
6. actionNext 下一个,对应常量EditorInfo.IME_ACTION_NEXT 效果:
7. actionDone 完成,对应常量EditorInfo.IME_ACTION_DONE 效果:
intent是描述应用想要做什么。
activity:一个activity就是一个单独的屏幕,一个活动就是一个独立的类,继承制基类。
当一个屏幕打开后前一个屏幕将会暂停,保存在堆栈中。所有的acitivity类继承自android.app.Activity类。
在intent的描述结构中,有两个重要的部分:动作和对应的数据,典型的动作类型有:VIEW,PICK,EIDIT,而动作对应的据则以uri的形式表示,与之有关系的一个类是intentfilter,用于描述一个activity可以操作那些intent,一个intentfilter需要子啊AndroidManifest.xml中进行定义。
Servise:一段长生命周期的,没有用户界面的程序。
SQLite作为系统的DB
在安卓中每一个应用都运行在自己的进程中,要想实现数据共享和传输使用ContentProvider来完成、
Dalvik虚拟机
Dalvik 是基于寄存器的,JVM是基于栈的,前者对于更大程序来说话费的时间更短。
Dalvik允许在有限的内存中同时运行多个虚拟机实例。
安卓上的class文件需要链接成dex文件后才能在dalvik上运行。class文件不能直接运行在Dalvik上(dex文件安卓平台的可执行文件)。
JAR文件,JAR的含义为Java ARchive.
adb:
快速更新设备或手机模拟器中的代码,如应用或者安卓系统升级
在设备上运行shell命令
管理设备或手机手机模拟器上预订端口
在设备或者手机模拟器上复制,粘贴文件
adb常用操作:安装应用到模拟器,
Android 的用于传给集合控件(ListView,Spinner,GridView 等)的数据都是以 Adapter 的形势,这样的好处就是只要掌握了 Adapter ,就可以很随意的给这些集合控制传递数据,因为他们使用的都是 Adapter 。
<ImageView <TextView 等控件属性
android:layout_alignParentRight="true" 属性表示存放的位置(右端)。
android:layout_alignParentLeft="true" 左端
< GridView 及其属性:
<GridView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/gridview"
android:layout_width= "fill_parent"
android:layout_height= "fill_parent"
android:columnWidth="90dp" 列宽度
android:numColumns="auto_fit" 自动匹配填充
android:horizontalSpacing= "10dp" 水平间距
android:verticalSpacing= "10dp" 垂直间距
android:stretchMode="columnWidth" 匹配模式 根据列宽自动缩放
android:gravity="center"> 位于中部
</GridView>
单选按钮放在<RadioGroup >标签中,<spinner表示下拉框
wrap_content」(包住内容)
查看帮助文档:
离线文件
当你处于没有网路连接的情况下时,也可以找到Android 文件参考。在下载了
android-sdk
后,将之解压缩,你可以在「android-sdk/docs」目录中
(android_sdk/docs/reference/view-gallery.html)
,找到一份与线上文件相同的文件参
考。
protected void onCreate(Bundle savedInstanceState) {
super. onCreate(savedInstanceState);
setContentView(R.layout. activity_main);
...
}
当Android 应用程序启动、换到背景等待、关闭时,都会用到"savedInstanceState"这
个实体来处理记忆体相关的事宜。
"Bundle"可以保存程序上一次关闭(冻结)时的状态。你可以透过覆写onFreeze 方法(与
onCreate 方法的作用类似) 来保存冻结前的状态。当程序启动(Activity 重新初始化)时,
会再次呼叫onCreate 方法,你就能从savedInstanceState 中得到前一次冻结的状态。我们
也可以透过"Bundle"来将这个Activity 的内容传到下一个Activity 中。
classes.dex 他是给android的java虚拟机Dalvik运行的字节码文件。
后续......
发表评论
-
Could not open the editor. Andriod XML Editor cannot process this input
2013-06-19 09:03 3197Open Window > Preferences &g ... -
聊聊工作
2013-06-07 22:14 689最近比较忙,总有那么 ... -
点击屏幕其他地方动画消失
2013-05-29 22:05 2242功能需求描述: 自定义了一个控件,当触发按钮事件后动画移出来 ... -
回调函数
2013-05-17 23:22 904回调的使用在android 源码里面不少见: 这里截取了Vi ... -
ListView 使用实例。 类似于Fragment
2013-05-17 23:18 1117自定义适配器: // 自定义适配器 private c ... -
System.gc() in Java
2013-05-17 22:58 1270Java的的一个显著特点就是垃圾回收机制,关于垃圾回收机制 ... -
破解apk文件
2013-05-05 20:27 792博客地址:点击查看 -
colors.xml all colors.
2013-04-29 08:13 879from http://stackoverflow.com/ ... -
LogHelper.java
2013-04-24 22:25 1626package xmtools; import andr ...
相关推荐
**SEO入门教程零散笔记** SEO,全称搜索引擎优化(Search Engine Optimization),是提升网站在搜索引擎自然搜索结果中排名的一种技术。在这个文档中,我们将深入探讨SEO的基本概念、原理和实践技巧,帮助初学者...
Maven是一个广泛使用的Java项目管理和构建自动化工具,它主要通过一个中央的项目对象模型文件(POM)来配置项目的基本信息、依赖、构建配置、插件等信息。通过这些配置,Maven能够处理项目的构建过程,包括编译代码...
这份"Linux个人笔记零散"的资料集可能是对Linux系统使用、管理以及命令行操作的详细记录,对于学习和理解Linux系统有极大的帮助。下面我们将深入探讨Linux的一些核心知识点。 1. **Linux基础**: Linux是一种自由...
Git是一种分布式版本控制系统,由Linus Torvalds(Linux的创造者)发起,并且目前是开放源代码社区中最流行的版本控制工具之一。Github是一个基于Git的代码托管平台,它提供了一个Web界面,使得用户可以方便地创建、...
在"keepLearning:整理自己学习过程中的一些零散笔记"这个项目中,我们可以看到作者通过整理自己的学习笔记,分享了他在编程、数据分析以及可视化方面的心得。这个资源包含了多个标签,如"python"、"r"、"data-...
零散MATLAB资料分享-Matlab字符串函数汇总.pdf 最近在用MATLAB做一个项目,自然需要查很多东西,在网上搜集了一点资料,并非原创。本着分享的精神,希望能帮助到部分人。 包括以下内容 在MATLAB图形用户...
定期复习和整理笔记,将零散信息整合成知识网络,可以巩固记忆,提高长期记忆的效果。 最后,"notes学习笔记总结"可能还包括如何利用笔记进行有效学习的策略,如间隔重复和自我解释。间隔重复是一种记忆强化技巧,...
- 通过为知笔记,用户可以构建个人知识库,将零散信息整合成系统化的知识结构,便于回顾和学习。 - 分类管理信息,如使用文件夹分类收集的网页,有助于信息的组织和查找。 - 利用为知笔记的日历功能,可以有效...
零散型产业中的竞争战略.ppt
随后,为了提升便携性,出现了“零散隔断防护”,即对关键部件进行独立防护,减轻了机身重量,但这无法应对复杂的冲击情况,尤其是在大尺寸笔记本中。 进入“后工业时代”,Roll Cage整体防护技术应运而生。...
2. **知识库构建**:mybase支持构建个人知识库,将零散的信息整合成一个完整的知识体系。用户可以通过建立层级关系,将相关的笔记链接在一起,形成知识网络。 3. **搜索功能**:mybase拥有强大的全文搜索功能,支持...
以下是一些常用且零散的PPT制作技巧,这些技巧涵盖了设计、编辑、动画以及高效工作流程等多个方面。 1. **设计原则**: - **色彩搭配**:遵循60-30-10规则,主色调占60%,次要颜色占30%,强调色占10%,保持视觉...
目前市面上关于GEE的教程和学习资源大多以英文为主,且内容较为零散,难以系统性地指导初学者。因此,笔记特别以中文撰写,并采用“代码+截图+详细解释”的方式,针对每一行代码的含义和操作步骤进行逐一解读,力求...
【零散知识点总结】 在IT领域,Linux是一个广泛使用的开源操作系统,它基于Unix,并由全球各地的开发者共同维护和更新。Linux系统不仅被应用于个人电脑,还在服务器、嵌入式设备以及超级计算机中占据主导地位。这个...
这些零碎的知识点虽然零散,但在实际编程中却非常实用。 【压缩包子文件的文件名称列表】: "net基础" 这个文件可能是一个详细的文档,涵盖了.NET开发的基础内容。可能包括以下章节: 1. **.NET框架简介**:解释...
在Qt编程过程中,积累的零散知识对于提升开发效率和代码质量至关重要。以下是一些关键知识点的详细说明: 1. **数据库字符类型**: - `char`:定长字符串,索引效率高,但可能会浪费空间,适合存储固定长度的数据...
Web安全学习笔记是一个Web安全学习帮助参考文档,在学习Web安全的过程中,深切地感受到相关的知识浩如烟海,而且很大一部分知识点都相对零散,如果没有相对清晰的脉络作为参考,会给学习带来一些不必要的负担。...
个人日常总结,待整理 杂乱的笔记
由于提供的文件内容主要由大量无法识别的字符和一些零散的文字组成,并没有具体的信息可供提取,所以无法从这些内容中生成相关的知识点。但根据文件的标题、描述和标签,我们可以推测文档的内容与微电子科学与工程...
零散MATLAB资料分享-Matlab数据库编程入门.pdf 最近在用MATLAB做一个项目,自然需要查很多东西,在网上搜集了一点资料,并非原创。本着分享的精神,希望能帮助到部分人。 包括以下内容 在MATLAB图形用户...