从HelloWorld学习Android Studio的项目结构

AndroidManifest.xml组件注册

<activity  android:name="com.test.helloworld.HelloWorldActivity" android:label="@string/app_name">    <intent-filter>        <action android:name="android.intent.action.MAIN"/>        <categroy android:name="android.intent.category.LAUNCHER"/>        </intent-filter></activity>

这段代码表示对HelloWorldActivity活动的注册,没有注册的活动是不可以使用的,intent-filter里边的两行代码特别的重要,表明这个活动是这个项目的主活动,在手机上点击应用,首先启动的就是这个活动。

HelloWorldActivity活动

package com.example.helloandroid;import android.app.Activity;import android.os.Bundle;public class MainActivity extends Activity {    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);    }}
  1. package部分为包的声明
  2. import引入类,因为你编写的代码中有可能会用到该类中的某个方法,当你.方法的时候会用到这个类,所以会Import,Import就是引用的意思,后面的Android.app.Activity是这个类的具体的路径
  3. 安卓程序讲究逻辑和视图分离,不推荐在活动中直接编写界面,通用的是在布局文件中编写界面,然后在活动中引入进来。onCreate()方法是一个活动被创建时必须要执行的方法。setContentView()这个方法给当前的活动引入了一个布局。

activity_main.xml布局文件

<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="com.example.helloandroid.MainActivity">    <TextView  android:id="@+id/myfirstid" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/app_name" /></RelativeLayout>
  1. 对于布局的id申请,使用android:id=”@+id/id名”
  2. 对于id 的引用,使用的是@id/id名
  3. 字符串一般不在布局文件中定义,Android不推荐在程序中对字符串进行硬编码,更好的做法一般是将字符串定义在res/values/string.xml里,然后在布局文件中使用或者代码中引用

string.xml 文件

<resources>    <string name="app_name">HelloAndroid</string></resources>

string.xml文件中储存有字符串,引用的方法如下:

  1. 代码中引用R.string.app_name可以获得该字符串的引用
  2. 在xml文件中通过@string/app_name可以获得该字符串的引用

其中string部分可以修改为drawable引用图片资源,改为layout引用布局文件,以此类推。

Android Studio的布局单位

Android Studio--HelloWorld_第1张图片
1. px:表示屏幕实际的象素。例如,320*480的屏幕在横向有320个象素,在纵向有480个象素。
2. in:表示英寸,是屏幕的物理尺寸。每英寸等于2.54厘米。例如,形容手机屏幕大小,经常说,3.2(英)寸、3.5(英)寸、4(英)寸就是指这个单位。这些尺寸是屏幕的对角线长度。如果手机的屏幕是3.2英寸,表示手机的屏幕(可视区域)对角线长度是3.2*2.54= 8.128厘米。读者可以去量一量自己的手机屏幕,看和实际的尺寸是否一致。 3. mm:表示毫米,是屏幕的物理尺寸。 4. pt:表示一个点,是屏幕的物理尺寸。大小为1英寸的1/72。5. dp(与密度无关的像素):逻辑长度单位,在 160 dpi
屏幕上,1dp=1px=1/160英寸。随着密度变化,对应的像素数量也变化,但并没有直接的变化比例。
6.dip:与dp相同,多用于Google示例中。
7.sp(与密度和字体缩放度无关的像素):与dp类似,但是可以根据用户的字体大小首选项进行缩放。

更多相关文章

  1. Android分别使用HTTP协议和TCP协议实现上传文件
  2. android添加文件打开方式以及参数传递
  3. 利用android studio LinearLayout线性布局嵌套设计制作简易的计
  4. 在pc上安装android market软件并提取apk文件
  5. Android SDK Manager在添加Platforms和其他Packages时提示无法在
  6. Android 自学之相对布局 RelativeLayout

随机推荐

  1. 自定义View之滑动事件
  2. MVVM框架的使用介绍和为什么选择用MVVM框
  3. AsyncTask原理及不足
  4. Android登录注册功能封装
  5. android开发之Android(安卓)5.0 Lollipop
  6. android线程 Handler Message Queue Asyn
  7. Android(安卓)OpenGL ES2.0从放弃到入门(
  8. 一个android应用效果开发引发的惨案(andro
  9. Android中的事件处理研究
  10. Android: 记一次Android内存泄露