您的位置:首页 > 移动开发 > Android开发

学习android 整理常用的小资料

2013-08-27 00:06 309 查看
URi是同一资源标示符,url是同一资源定位符;

SurfaceView视频播放,使用了SurfaceHolder接口中的addCallback方法

配置清单文件中设置对话框样式的:theme=android:style/theme.dialog 可测出模拟器r18版本上的可出现的bug

ViewFlipper vf; //控件是封装图片的;

GestureDetector 接口mGestureDetector; 可设置手指滑动事件 GestureDetector.SimpleOnGestureListener()内部方法onFling

当item没有焦点的时候可在xml文件中修改:

clickable//可别点击

focusable//可得到焦点

toleftof=“” 意思是在指定窗体的左边

WebService 是用与连接网络的;

background背景与 src是不一样的:背景是添加了一个背景颜色。src 是添加了一个图片

手机上面的上网模式值:GPRS -->2.5G E -->2.75G H -->3.5G;其余的就是2---3G;

在java代码中显示隐藏bt_play.setEnabled(true); 调用按钮的显示隐藏

显示隐藏,在布局中配置visibility="gone";

调用 bt_cancel.setVisibility(View.VISIBLE); 显示

bt_cancel.setVisibility(View.INVISIBLE); 隐藏

去除ui界面的阴影是在xml文件中配置:fadingEdge:"none"

gravity是代表当前布局居中显示;

layout-gravity是代表父窗体居中显示;

margin 就是自己与别人的距离; 如:自己的图片与别人的图片的距离 。与父窗体的距离,

padding 就是自己与自己的距离 如:自己的图片与自己的字体的距离。与自己控件的距离,自己窗体与的文字距离

在布局中可设置滚动条目:可设置在这个textview窗体中包裹可滚动;

实现消息推送可以使用谷歌提供的C2DM服务,实现推送手机功能

消息推送是当客户端下载此软件后,不需要客户端主动连接服务器区取数据,而是服务器将消息直接推送客户端上;

svn在eclipse中操作:

首先配置环境在eclipse中的dropins文件夹中建立一个文件扩展名为.link;

内容为:path=E:/develop/eclipse-svn/ path://eclipse中zip包的路经;

再打开eclipse,看看插件是否安装成功;

操作svn:

打开svn后引用服务端的数据 svn://localhost/itcase;指定服务器仓库

在到resource中下载文件;打开svn可获取服务器创库的数据;

在获取的工程下点击右键:中的team可提交,跟新,与资源同步等 还有编辑冲突,解决冲突。。

Compare with 是获取新的数据;可获取时间,数据变化;

Replace with 是获取之前的数据,可获取时间,数据变化;

在服务器创建一个仓库:

svnadmin hlep 进入命令;

创建 svnadmin create 文件名\itcase 如:E:\software\repository\svn\itcast 如果明确了单个svn\itcast,如果没有明确那么就是多个;

操作:现在服务端配置一个仓库,在客户端建立一个工程使用svn与服务连接,在提交工程,提交成功后服务端在返回个数据就是你下载的数据;

Activity的任务模式

Android中的任务栈有4中模式:

standard标准模式(默认):

当需要启动Activity时,直接将一个新Activity放到栈顶。

singleTop模式:

若打算启动的Activity和当前栈顶Activity是同一个Activity则系统将不会再去启动新的Activity。否则,则会启动。 例如:在栈顶只能有一个相同的activity

singleTask模式:

若当前打算启动的Activity的taskAffinity属性的值等于系统中某个Task的affinity属性的值,则进一步判断: 例如:在整个任务站中只能有一个

若该Activity不存在于该Task中,则在该Task中启动该Activity。

若已经存在,则系统会不断的将该Task栈顶的Activity弹栈,直到该Activity处于栈顶时才停止弹栈。

若taskAffinity不和任何Task的affinity相等,则就会在新Task中启动该Activity。

singleInstance模式:

若当前打算启动的Activity在栈中已经存在,则将该Activity移动到栈顶(但不执行弹栈操作)。否则将创建。 例如:单例,在整个应用程序中自能有一个

指定Activity的任务栈模式

使用的android:launchMode属性。

在Intent中设置Flag。

横竖屏的切换

调用activity的生命周期;需要在清单文件中配置两个属性;

android:configChanges="orientation|keyboardHidden"

生命周期调用的次数:

如果配置了android:configChanges="orientation|keyboardHidden"

activity不会从新调用activity,会调用onConfigurationChanged方法;

如果只配置了android:configChanges="orientation一个属性,

横竖屏切换的时候activity的生命周期会调用一次;

如果都没有配置属性的时候,横竖屏切换的时候activity的生命周期会调用两次;

加载布局的三种方式 如何把布局填充在另一个布局问价中文件转换为对象;layoutInflater 类似于一个打气筒系统填充器; getSystemService

inflater=(layoutinflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);//得到系统的打气筒

到gatView方法中写: 填充布局到另外一个布局中

View view=inflate(R.layout.item,null);//把一个布局转化成了一个对象

TextView tv_name=view.find.....(R.id.tv_name);//获取布局中的id值

Person person=Persons.get(position);//获取这个数据中的位置

tv_name.setText(person.getname());//获取数据中的名称

return view;//返回布局

第二中方式填充:view.inflater(this,R.layout.main,null);//回报空指针

第三种方式填充:LayoutInflater inflater = getLayoutInflater().from(this);//加载填充数据

inflater.inflate(R.layout.main, null);//填充布局

屏幕的适配:

第一种:可在drawable目录下的hdpi mdpi ldpi 中可选择配置;

hdpi是配置最大的;

mdpi是配置中等的;

ldpi是配置最小的;

第二种:

是在清单文件中配置:

android:normalScreens="true" //屏目正常的配置

android:smallScreens="true" //屏幕较小的配置

android:resizeable="true" //是否可以调整大小

android:anyDensity="true" />//可以调整任意的密度

让listView显示在最上面,使用子线程去完成。private void scrollToTop() {

scroll.post(new Runnable() {

@Override

public void run() {

scroll.fullScroll(ScrollView.FOCUS_UP);

}

});
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: