Android 2.0升级到Android 2.1之后将会获得以下的更新:3D的图片库、语音输入、新闻和天气插件、改进的锁定模式以及pinch-to-zoom 。当然对于大家之前十分关注的动态壁纸在Droid的Android 2.1中也会加入。但是MOTO也会使得自己的Droid拥有一定的个性,例如他们就不会加入Nexus One中的3D程序界面,不过这样已经很好了,我们现在就是希望能够更早的得到Android 2.1的推送。
创新互联是专业的青冈网站建设公司,青冈接单;提供网站设计制作、成都做网站,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行青冈网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
1. 环境搭建
- Ubuntu+eclipse+ADT
2. Android 启动很慢?
没办法,确实是很慢,等着吧,普遍说法是启动***次后不关闭,以后的就是部署了要快不少的,经测试,确实是要快一些的。最不能让我接受的是居然连点击Home键都是很慢的呢。
3.R.layout.main cannot be resolved
刚写了一行就出了这么个错误,让我没有一点脾气的来查找原因。
解决方案:
(1)删除第三行的“import android.R” 注:我不知道是什么时候加进来的。
(2)勾选Eclipse中的“Project->Build Automatically”
原因分析:
(1)删除“import andorid R”之后工程就是从/res文件夹下自动生成哦资源我呢间里去解析了,否则它会从Android的资源类里去找。
使用Eclipse进行Java开发,我们首先要注意到它的编译是智能的,进入Preferences 并启用动态构建(workbench>Build automatically)。这样的话,当我们每次保存文件时,Eclipse将会自动编译该文嘉以及依赖于该文件的文件。因此,当我们想运行应用程序的时候,它基本已经保存好并且是***版本了。在处理大型代码量时,着可以节约不少时间。
4.关于布局
买来的书是基于以前版本的(Android SDK 1.0r2),对控件的布局还是android:layout_x=”61px”,现在已经要android:layout_marginLeft=”61px” 这样写了,不然不起作用的。好奇的是还必须是px值,不然编译器就报错了,编译器还能识别字符串里的内容!果然强大。
5. 要在TextView中显示网址需要在TextView节点中加入android:autoLink = “all”
6. 常数(res\values) 这个文件夹下定义项目中要用到的所有常数,预先定义好,是编程的一个好习惯。例如:
(1)定义颜色常量(color.xml)
#808080FF #FFFFFFFF
(2)定义字符串常量(strings.xml)
Hello World Android Test Android 帐号 密码
定义好了怎么用呢,有两种引用方式:
(1)标记引用:android:text=”@string/str_id”
(2)代码引用:
- Resources resources = getBaseContenxt().getResources();
- Drawable HippoDrawable = resources.getDrawable(R.drawable.white);
- //String aa = resources.getString(R.string.app_name);
- //String bb = getString(R.string.app_name);
- TextView tv= (TextView)findViewByID(R.id.text);
- tv.setBackground(HippoDrawable);
- // 当然可以通过使用graphics.Color 这个android默认的颜色来使用,但是只有12种常见的颜色
- /×
- Color.BLACK
- Color.BLUE
- Color.CYAN
- Color.DKGRAY
- Color.GRAY
- Color.GREEN
- Color.LIGRAY
- Color.MAGENTA
- Color.REN
- Color.TRANSPARENT
- Color.WHITE
- Color.YELLOW
- ×/
- view sourceprint?1 7.获取手机的分辨率
- view sourceprint?1 这个就是Android与ios的不同,这个系统被不同的手机厂商使用,造出的机器也就大小各异了,而苹果的系统只有他自己用,所以能做到统一。
- view sourceprint?1 DisplayMetrice dm = new DisplayMetrice();
- getWindowManager().getDefaultDisplay().getMetrice(dm);
- string strOpt="手机分辨率为:"dm.widthPixels + " x " + dm.heightPixels;
#p#
7.Style样式的定义
老是要一个个指定文字的大小,颜色也不是办法的啊,所以也就有类似CSS样式来登场了。样式表文件取名为:style.xml放在res/values/style.xml 位置
定义样式示例:
- view sourceprint?01
view sourceprint?1 怎么用呢?下面为main.xml文件中的两个TextView应用不同的样式。
8.页面切换
(1)在同一个activity 中利用setContentView来置换页面(在res\layout\下定义main.xml 和mylayout.xml)
通过setContentView(R.layout.mylayout);setContentView(R.layout.main)来在两个layout中切换。在此有个优点:即所有的程序里的变量
都存在相同的状态,无论是类成员变量,类函数等,皆可以在一个Activiy的状态中直接取得,并没有参数传递的问题。
(2)调用另一个Activity
- /× new 一个 Intent 对象,并指定要启动的Class×/
- Intent intent = new Intent();
- intent.setClass(TestAndroid.this,TestAndroid2.class);
- startActivity(intent);
- TestAndroid.this.finish();
view sourceprint?1 当系统中新添加Activity时,必须在AndroidManifest.xml里定义一个新的activity:
否则系统将会因为找不到Activity而发生编译错误。
另外,当程序中出现两个以上的Activity时,系统要决定主程序是哪一支(entry point)
其中有一行为
而不是其他的,这个是必须定义一个的,如果xml中没有一个定义了,那么程序将不会启动的。
(3)不同的Activity之间的数据传递
- Intent intent = new Intent();
- intent.setClass(TestAndroid.this,TestAndroid2.class);
- //new 一个bundle对象,并将要传递的数据传入
- Bundle bundle = new Bundle();
- bundle.putDouble("height",height);
- bundle.putString("Sex",sex);
- //将Bundle对象assign给Intent
- intent.putExtras(bundle);
- startActivity(intent);
- TestAndroid.this.finish();
那么在TestAndroid2如何取得来自TestAndroid的数据呢,是这样子的 view sourceprint?1 //取得Intent中的Bundle对象
- Bundle bunde = this.getIntent().getExtras();
- String sex = bunde.getString("Sex");
- double height = bunde.getDouble("height");
这样就取到数据了,除了上述简单的传递类型之外,还有String[]和ArrayList
(4)返回数据到前一个Activity
在***个Activity这样开始数据初始化
- view sourceprint?01 Intent intent = new Intent();
- intent.setClass(TestAndroid.this,TestAndroid2.class);
- //new 一个bundle对象,并将要传递的数据传入
- Bundle bundle = new Bundle();
- bundle.putDouble("height",height);
- bundle.putString("Sex",sex);
- //将Bundle对象assign给Intent
- intent.putExtras(bundle);
- //调用Activity TestAndroid2
- startActivityForResult(intent,0);
在第二个Activity中取到数据后(按上一种方法取),使用完毕,这样返回 view sourceprint?1 //返回result 回上一个activity
- TestAndroid2.this.setResult(RESULT_OK, intent);
- //结束这个activity
- TestAndroid2.this.finish();
回到***个Activity是这样来取得返回的数据
- view sourceprint?01 //覆盖 onActivityResult()
- Protcted void onActivityResult(int requestCode,int resultCode,Intent data)
- {
- switch(resultCode)
- {
- case: RESULT_OK:
- Bundle bunde = data.getExtras();
- String sex=bunde.getString("Sex");
- double height = bunde.getDouble("height");
- ...
- }
如果要在次页面加上一个“回上页”的按钮,而非通过模拟器的回复键,且回上页后又能保留之前输入的相关信息,那么就必须使用startActivityForResult()来唤起一个Activity。利用这个方法,前一哦Activity1便会有一个等待次Activity2的返回,而返回的数据就可以达到我们想要的结果。
标题名称:Android2.1学习笔记
分享地址:http://www.csdahua.cn/qtweb/news15/66365.html
网站建设、网络推广公司-快上网,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网