设为首页 加入收藏

TOP

Android 开发之用Hello World做项目结构分析
2014-11-24 11:33:33 来源: 作者: 【 】 浏览:0
Tags:Android 开发 Hello World 项目 结构 分析

public class HelloWordActivity extends Activity {


/** Called when the activity is first created. */


@Override


public void onCreate(Bundle savedInstanceState) {


super.onCreate(savedInstanceState);


setContentView(R.layout.main);


setTitle("Hello World");


}


当实现自己的Activity的时候,一般都需要重载onCreate 这个方法来实现添加控件,处理控件的相关功能等。setContentView(R.layout.main);就是实现控件的添加布局(视图)。视图由R类负责寻找。 而R.layout.main 会指向res/layout/main.xml 这个配置文件,在这个配置文件中,可以添加控件,并对控件进行布局。下面我们讲一下android工程的结构,会便于理解这个问题。


如下图,所示:


src下面是自己的写的代码,同时我们可以看到,还有一个gen目录,在该目录下面有个R.java的文件。R文件由ADT自动生成,程序员不需要也不要去修改它,R文件负责调用应用程序中的非代码资源。在R文件中每一个资源文件都会对应一个整数。 如下所示:



public final class R {


public static final class attr {


}


public static final class drawable {


public static final int icon=0x7f020000;


}


public static final class id {


public static final int button1=0x7f050006;


public static final int button2=0x7f050007;


public static final int lineLayout1=0x7f050003;


public static final int linelayout1=0x7f050002;


public static final int text1=0x7f050000;


public static final int text2=0x7f050001;


public static final int textview1=0x7f050004;


public static final int textview2=0x7f050005;


}


public static final class layout {


public static final int frame_layout=0x7f030000;


public static final int main=0x7f030001;


}


public static final class string {


public static final int app_name=0x7f040001;


public static final int hello=0x7f040000;


}


}


这里需要注意的是android系统本身也有一个R.java的文件,在android这个包下面。当import了这个系统的R的时候(import android.R;),我们需要通过带包名的方式来访问项目的R.java.比如:


setContentView(org.terry.R.layout.main);


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Android RenderScript 学习笔记 下一篇Android开发之ContexMenu上下文菜..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·Python爬虫教程(从 (2025-12-26 16:49:14)
·【全269集】B站最详 (2025-12-26 16:49:11)
·Python爬虫详解:原 (2025-12-26 16:49:09)
·Spring Boot Java: (2025-12-26 16:20:19)
·Spring BootでHello (2025-12-26 16:20:15)