Java -Android 学习(第四天)

来源:互联网 发布:用python的turtle画图 编辑:程序博客网 时间:2024/05/21 17:27

添加新的Activity

   我们已经了解到一个Activity就相当于是一个界面(当然了,这样说并不严格,但易于理解)。

     当我们创建一个安卓应用程序之后,就默认创建了:

     ①、一个继承Activity的Class(该类会实现父类的Oncreate方法并setContentView(R.layout.activity_main));

     ②、一个默认的布局文件(res-layout文件夹下);

     ③、一个<activity></activity>节点(安卓应用程序清单(AndroidManifest)中<application></application>节点下,有一个对应的<activity></activity>节点).

  

     然而,Android程序,一般都要有一个以上的界面,那么如何添加一个新的界面呢?

     通过上面的分析,其实我们也能大概知道要做哪些准备工作了:

   ①、创建一个布局文件(在res-layout文件夹下);

     ②、建立新的Class继承Activity(实现Oncreate方法,跟刚才建立的XML布局文件关联上);

   ③、在AndroidManifest.xml中添加新Activity节点来描述①、②

         具体操作:将AndroidManifest文件,切换到Application视图下,在视图下面的Application Nodes栏中,Add一个新的Activity就可以了; 或者,如果熟练的话,直接在AndroidManifest.XML视图下,添加<activity/>节点,看个人习惯。

Android 两个界面中控件同一个Id

       在第一天中已经知道:“gen:为ADT插件自动生成的代码文件保存路径,里面的R.java将保存所有的资源ID”

所有的资源都映射到R.java里面。

       我们在访问资源View的时候,经常是这样做:

 setContentView(R.layout.activity_login);或者userid = (EditText) findViewById(R.id.userId);

都是通过R.java 文件找到相应资源的。

      这时候,如果两个不同的布局文件中的控件拥有相同的Id,会是什么样子呢?在使用、操作这些控件的时候会不会出现什么问题呢?

   事实上:

    相同文件下如果控件id相同是不允许的,eclipse会报错的,如果不是同在一个布局文件中的话就可以,findviewbyid ()找的那个id是你前面用setContentView(R.layout.*)中的xml文件中的id。

尽管是这样,但是最好是在定义Id的时候,能够区分开为好。清晰易维护。钦此。

 

 

 

 

2 0
原创粉丝点击