一、Android项目目录结构

1.         AndroidManifest.xml:整个Android项目的配置,注册各组件

<activity android:name=".MainActivity" >
    <intent-filter>
        <action android:name="android.intent.action.MAIN"
/> 
        //主活动

<category android:name="android.intent.category.LAUNCHER"
/>    
//首先启动的活动
    </intent-filter>
</activity>

2.        
Activity

逻辑与视图分离

1)        
AppCompatActivity:向下兼容Activity,Activity的子类。

2)        
oneCreate()方法:创建活动必执行。

3.        
build.gradle文件

1)        
Gradle是项目构建工具

2)        
一个项目有两个build.gradle

a)        
最外层目录下:全局的项目构建配置,一般无需修改

b)        
app目录下

defaultConfig闭包:

applicationId:在此修改包名

dependencies闭包:

项目的依赖关系:本地、库、远程

二、资源

引用资源:

代码中通过R.string.app_name

XML中通过@string/app_name

三、日志工具的使用

1.        
log.v
()      
log.d()      
log.i()        log.w()     
log.e()

级别:低→高

2.  
Log.d("MainActivity","oneCreate
execute");

tag:过滤打印信息(一般是当前类名,logt可自动生成TAG常量)

msg:打印的具体内容

3.        
logcat:过滤器、日志级别控制、关键字过滤

四、活动的基本用法

1.        
创建活动

2.        
创建和加载布局

a)        
XML定义Id:@+id/button_1

b)        
加载布局:setContentView(R.layout.first_layout);

3.        
在AndroidManifest中注册

使用<activity>,放在<application>标签下(自动注册)

a)        
声明主活动:

b)        
加标题栏

<activity android:name=".FirstActivity"
    android:label="This is FirstActivity">

4.        
活动中使用Toast

//      findViewById()获取布局中定义的元素,再将View向下转化成Button
        Button button1 = (Button)
findViewById(R.id.button_1);
        /*
        * Button的setOnClickListener()方法:注册监听器
        * Toast.makeText()方法:创建Toast对象
        * 这里使用匿名内部类,View是一个类,OnClickListener()是接口
       * */
//        button1.setOnClickListener(new
View.OnClickListener() {
            @Override
            public void onClick(View
v) {
               
Toast.makeText(FirstActivity.this,"You click Button
1",
                       
Toast.LENGTH_SHORT).show();
            }
        });

step1:定义触发点——按钮(使用findViewById()获取)

stpe2:为按钮注册监听器,监听器中有OnClick()方法,点击按钮就执行OnClick()

stpe3:OnClick()中调用Toast.makeText()创建Toast对象,该方法有三个参数:Context、显示的文本、显示时长

Android学习_7/22的更多相关文章

  1. android学习笔记22——Notification

    Notification ==> Notification是显示在手机状态栏的消息,位于手机屏幕的最上方: 一般显示手机当前网络.电池状态.时间等: Notification所代表的是一种全局效 ...

  2. Android学习系列(22)--App主界面比较

    本文算是一篇漫谈,谈一谈当前几个流行应用的主界面布局,找个经典的布局我们自己也来实现一个.不是为了追求到底有多难,而是为了明白我们确实需要这么做. 走个题,android的UI差异化市场依然很大,依然 ...

  3. Android学习_7/27

    一.           自定义控件 1.         引入布局 多个活动需要相同的布局时,使用引入布局的方式来实现代码复用. activity_main.xlm中加入<include la ...

  4. Android学习_7/26

    四种基本布局 1. 线性布局(LinearLayout) android:layout_gravity:指定控件在布局中的对齐方式 android:gravity:指定文字在控件中的对齐方式 andr ...

  5. Android学习_7/25

     常用控件 Android控件使用规律:先定义id,再指定宽度和高度,然后适当加入一些控件特有的属性 1.         TextView 在界面上显示一段文本 2.         Button ...

  6. Android学习_7/24

    一.           活动的生命周期 1.        活动状态 运行:位于返回栈栈顶 暂停:不在栈顶,但仍可见 停止:不在栈顶,完全不可见 销毁:从栈中移除 2.        活动的生存期 ...

  7. Android学习_7/23

    1.        在活动中使用Menu 1)        什么是Menu? 2)        怎么实现? step1:res目录下创建Menu resource file,使用<item… ...

  8. 我的android学习经历22

    eclipse自动退出 今天打开eclipse的时候出现自动退出,也就是打不开了 我上网查了一下,把工作区间改了一下就好了 修改默认工作区间的如下:(不是默认的话直接修改就好) eclipse\con ...

  9. Android学习系列(23)--App主界面实现

    在上篇文章<Android学习系列(22)--App主界面比较>中我们浅略的分析了几个主界面布局,选了一个最大众化的经典布局.今天我们就这个经典布局,用代码具体的实现它. 1.预览图先看下 ...

随机推荐

  1. CentOS7 Python3安装redis

    CentOS7安装配置Redis 第一步:下载redis安装包 wget http://download.redis.io/releases/redis-4.0.9.tar.gz 想下载哪个版本可以复 ...

  2. 小P的架构生活(下)

    小L强烈建议团队使用微服务,并极力推荐了前公司用的一套分布式事务解决方案. 小P经过反复思考查证并做了大量的尝试后,辨证地对微服务架构做了如下分析: 为什么要用微服务,微服务带来了哪些好处? 1.减少 ...

  3. elasticsearch设置执行脚本并添加开机启动 (转)

    elasticsearch设置执行脚本并添加开机启动 在/etc/init.d目录下新建文件elasticsearch #!/bin/sh #chkconfig: 2345 80 05 #descri ...

  4. Spingboot使用log4j2

    1.pom.xml加入log4j2,并同时把spring boot默认的logging去掉,注意一定要全部排除否则会报错. <dependency> <groupId>org. ...

  5. linux shell 数组的使用

    引言 在Linux平台上工作,我们经常需要使用shell来编写一些有用.有意义的脚本程序.有时,会经常使用shell数组.那么,shell中的数组是怎么表现的呢,又是怎么定义的呢?接下来逐一的进行讲解 ...

  6. 3.(基础)tornado的接口调用顺序与模板

    上一节介绍了tornado的请求与响应,这一节介绍tornado的接口调用顺序和模板 首先都有哪些接口呢?作用是什么呢?并且都有的时候,执行顺序是怎么样的呢? 接口 1.initialize,表示初始 ...

  7. deep_learning_Function_tensorflow_random_normal_initializer

    函数原型:tf.random_normal_initializer(mean=0.0, stddev=1.0, seed=None, dtype=tf.float32) 返回一个生成具有正态分布的张量 ...

  8. Fiddler实现iPhone手机抓包

    最近某小程序大火,许多非专业人员也在跃跃欲试,但是在查找自己的session_id的时候卡住了,本文只从技术方面介绍如何通过通过Fiddler来抓取手机的数据,不涉及如何作弊... 1.电脑上安装Fi ...

  9. 一,python简介 笔记

    python历史 1,1989年圣诞节,Guido von Rossum开始编写python语言编译器 2,1991年2月,第一个python编译器诞生,是c语言实现的,后面又出现了c#和java版本 ...

  10. Linux硬件访问技术

    在Linux系统中,无论是内核程序还是应用程序,都只能使用虚拟地址,而芯片手册中给出的硬件寄存器地址或者RAM地址则是物理地址,无法直接使用,因此,我们读写寄存器的第1步就是将将它的物理地址映射为虚拟 ...