安卓项目入门_若雪似风_新浪博客

安卓项目的目录结构:

1. src  .java源文件

2. gen 文件都是自动生成的(不要修改,不要删除)

 该文件夹下面有个R.java文件,R.java是在建立项目时自动生成的,这个文件是只读模式的,不能更改。R.java文件中定义了一个类——R,R类中包含很多静态类,且静态类的名字都与res中的一个名字对应,即R类定义该项目所有资源的索引。

 

3. assets 项目开发中用到的资源 源生文件

 

4. bin 生成安装文件 .apk

5. libs 第三方的类库 .jar

 

6. res -resource项目中的资源 资源文件夹

  所有资源 都会生成一个唯一的编号

  通过编号 来使用这个资源

 

  使用方式:

1.资源之间相互使用:@类别/编号

2.在类文件中使用:R.类别.编号

要求:同一文件夹下,不要有同名文件

      文件名必须使用小写字母,数字不能开头,可以使用下划线

drawable:图片资源

Layout:布局

 

7. AndroidManifest.xml 

  清单文件:

1. sdk的版本号

2. 包名

3. 项目版本号

4. 组件清单,权限

项目的总配置文件,记录应用中所使用的各种组件。这个文件列出了应用程序所提供的功能,在这个文件中,你可以指定应用程序使用到的服务(如电话服务、互联网服务、短信服务、GPS服务等等)。另外当你新添加一个Activity的时候,也需要在这个文件中进行相应配置,只有配置好后,才能调用此Activity。

 

 

四大组件:1.活动:界面 可以看见的  Activity类

          2.服务:后台执行 看不见

          3.广播接收器: 

          4.内容提供者:应用程序之间共享数据、

       创建一个Activity

                 1>新建一个类 继承 Activity

                  public class MainActivity extends Activity {}

                 2>新建layout资源 

                   通过R.layout.xxx调用

                 3>在Activity类中重写onCreat()方法

                 4>在方法中写入代码:setContentView(R.layout.xxx)

                  @Override

              protected void onCreate(Bundle savedInstanceState) {

               super.onCreate(savedInstanceState);

               setContentView(R.layout.activity_main);

           }

                 5>在清单文件中注册

                

                  android:name="包名.类名">

                

 

               触摸事件:

                 重写Activity中的方法

                 onTouchEvent(MotionEven event)

                 *判断event的action

               Activity跳转

                 Intent intent=new Intent();

                 intent.setClass(从哪,到哪)

                 intent.setClass(this.XXActivity.class)

                 startActivity(intent);

     @Override

  public boolean onTouchEvent(MotionEvent event) {

//判断用户操作是否是抬起,界面的跳转

if(event.getAction()==MotionEvent.ACTION_UP){

//界面的跳转

//Intent intent=new Intent(this,SecondActivity.class);

//Intent intent=new Intent();

// intent.setClass(this, SecondActivity.class);

            //startActivity(intent);

openActivity(SecondActivity.class);

}

return super.onTouchEvent(event);

}

 

*所有Activity的父类都是Context

 

 

Activity生命周期七大方法:(On方法  回掉方法 满足条件的时候自动调用)

 

1. onCreat 创建 :当活动第一次启动的时候,触发该方法,可以在此时完成活动的初始化工作。 onCreate 方法有一个参数,该参数可以为空( null ),也可以是之前调用 onSaveInstanceState()方法保存的状态信息

2.onStart 启动:该方法的触发表示所属活动将被展现给用户

3.onRestar重启:当处于停止状态的活动需要再次展现给用户的时候,触发该方法

4.onResure获取焦点:当一个活动和用户发生交互的时候,触发该方法。

 

5.onPause暂停,失去焦点:当一个正在前台运行的活动因为其他的活动需要前台运行而转入后台运行的时候,触发该方法

6.onStop停止:当一个活动不再需要展示给用户的时候,触发该方法

7.onDestroy销毁

  finish(); -->back

 

LogUtil

   private final static String tag="Log标签"; 

private static boolean isDebug=true;

private static boolean isInfo=true;

private static boolean isWarning=true;

private static boolean isError=true;

 

public static void d(String tag,String msg){

if(isDebug){

Log.d(tag, msg);

}

}

public static void d(String msg){

if(isDebug){

Log.d(tag, msg);

}

}

public static void d(Context context,String msg){

if(isDebug){

       Log.d(context.getClass().getSimpleName(), msg);

}

}

LogUtil.i(tag,msg);

LogUtil.i(msg);

LogUtil.i(this.getClass().getSimpleName(),msg);

 

封装BaseActivity -->继承Activity 共有的代码 

//所有Activity共有特点

生命周期 方法

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

LogUtil.i(this.getClass().getSimpleName()+":onCreate");

}

 

@Override

protected void onStart() {

super.onStart();

LogUtil.i(this.getClass().getSimpleName()+":onStart");

}

 

@Override

protected void onRestart() {

super.onRestart();

LogUtil.i(this.getClass().getSimpleName()+":onRestart");

}

 

@Override

protected void onResume() {

super.onResume();

LogUtil.i(this.getClass().getSimpleName()+":onResume");

}

 

@Override

protected void onPause() {

super.onPause();

LogUtil.i(this.getClass().getSimpleName()+":onPause");

}

 

@Override

protected void onStop() {

super.onStop();

LogUtil.i(this.getClass().getSimpleName()+":onStop");

}

 

@Override

protected void onDestroy() {

super.onDestroy();

LogUtil.i(this.getClass().getSimpleName()+":onDestroy");

}

 

 界面跳转

protected void openActivity(Class

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值