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

1android应用编程学习

2011-06-30 15:53 369 查看

可以到这个博客看看:http://blog.csdn.net/hellogv

1资源文件的使用

1.1资源文件的管理

资源目录的层级结构如下表所示,表中显示了AndroidSDK支持的资源类型以及它们在工程中的存储方式。

资源类型所需的目录文件名适用的关键XML元素
字符串/res/values/strings.xml(推荐)<string>
字符串数组/res/values/arrays.xml(推荐)<string-array>
颜色值/res/values/colors.xml(推荐)<color>
尺寸/res/values/dimens.xml(推荐)<dimen>
简单Drawable图形/res/values/drawables.xml(推荐)<drawable>
位图图像/res/drawable/例:.png,.jpg,red_oval.xml等等支持的图形文件或XML文件定义的

Drawable图形

动画序列(补间)/res/anim/例:fancy_anim.xml等等<set>、<alpha>、<scale>、<rotate>等
菜单文件/res/menu/例:my_menu.xml<menu>
XML文件/res/xml/例:some.xml由开发人员定义
原始文件/res/raw/例:xx.mp3,yy.txt等等
布局文件/res/layout/例:main.xml等
样式和主题/res/values/例:themes.xml<style>

1.2资源文件的创建

创建完工程后,在Eclipse中定位至/res/values/strings.xml文件,双击可以编辑它。我们可以使用Resources标签下的Add按钮添加几个资源。。也可以切换到源文件编辑模式。定义的如下:
<?xmlversion="1.0"encoding="utf-8"?>
<resources>
<stringname="hello">HelloWorld,ActivityIntent!</string>
<stringname="app_name">ActivityIntent</string>
<stringname="prompt">TheActivityandTheIntenttest!</string>
<stringname="myButton">测试</string>
<stringname="other">另一个Activity</string>
<stringname="dialBtn">电话按钮</string>
</resources>
保存Strings.xml文件。Eclipse插件讲将自动在你的工程中生成R.java文件,并含有适当的资源ID,以供编译之后使用程序访问这些资源。如果你定位到/gen/目录下的R.java文件,你可以看到:
publicstaticfinalclassstring{
publicstaticfinalintapp_name=0x7f040001;
publicstaticfinalintdialBtn=0x7f040005;
publicstaticfinalinthello=0x7f040000;
publicstaticfinalintmyButton=0x7f040003;
publicstaticfinalintother=0x7f040004;
publicstaticfinalintprompt=0x7f040002;
}

1.3资源的读取

当我们创建好资源并保存后,我们变可以在程序用通过资源的ID来使用资源了。比如说,我们获取资源ID为hello的内容:
Stringstr=getResources().getString(R.string.hello);

2自动导入需要的类(eclipse):ctrl+shift+o

3androidTimer的使用

一种用法:packagecom.ray.test;
importjava.util.Timer;
importjava.util.TimerTask;
importandroid.app.Activity;
importandroid.os.Bundle;
publicclassJavaTimerextendsActivity{
Timertimer=newTimer();
TimerTasktask=newTimerTask(){
publicvoidrun(){
setTitle("hearme?");
}
};
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
timer.schedule(task,10000);
}
}
但为了Android的线程安全,实际上的用法应该通过配合Handler来实现AndroidTimer功能的!packagecom.ray.test;
importjava.util.Timer;
importjava.util.TimerTask;
importandroid.app.Activity;
importandroid.os.Bundle;
importandroid.os.Handler;
importandroid.os.Message;
publicclassTestTimerextendsActivity{
Timertimer=newTimer();
Handlerhandler=newHandler(){
publicvoidhandleMessage(Messagemsg){
switch(msg.what){
case1:
setTitle("hearme?");
break;
}
super.handleMessage(msg);
}
};
TimerTasktask=newTimerTask(){
publicvoidrun(){
Messagemessage=newMessage();
message.what=1;
handler.sendMessage(message);
}
};
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
timer.schedule(task,10000);
}
}

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