创建博客有一年的时间了,一直没把它用起来,颇感惭愧。近日突感有写博客的冲动,更可怕的是这种冲动似乎比我体内的洪荒之力更为凶猛。于是乎,这篇博客悄然诞生。废话不多说,进入正题——初识Android。

  这篇博客从最基本的知识讲起 ..

  1. View(视窗):View分很多种,展示文字的TextView、展示图片的ImageView、显示按钮的Button 等等(内容太多了,不一一列举了)。
  2. Layout(布局): 由屏幕上所有View组成。分为LinearLayout(线性布局)和RelativeLayout(相对布局)。
    • LinearLayout 特有代码:

      android:orientation=horizontal / vertical    //整体布局水平 / 整体布局竖直
      android:layout_weight="1" //(权重设置为1) 权重越大,空间获得的越多。应先将height(高度)或weight(宽度)设置为 0dp
      ... ...
    • RelativeLayout 特有代码:
      android:layout_alignParentTop="true / false"  //与父视图上缘对齐
      android:layout_alignParentBottom="true / false"  //与父视图下缘对齐
      android:layout_alignParentLeft="true / false"  //与父视图左缘对齐
      android:layout_alignParentRight="true / false"  //与父视图右缘对齐
      android:layout_centerHorizontal="true / false"  //视图水平居中放置
      android:layout_centerVertical="true / false"  //视图垂直居中放置 android:id="@+id/view" //@指Android app资源 + 资源类型(id) / 视图名
      android:layout_above="@id/view" //在 ben_text_view 上方
      android:layout_below="@id/view" //在 ben_text_view 下方
      android:layout_toLeftof="@id/view" //在 ben_text_view 左边
      android:layout_toRightof="@id/" //在 ben_text_view 右边 ... ...

        另外,相对布局向默认将控件添加在屏幕的左上角 <最基本要求:名称不得有任何空格>。

  3. 每个控件必须有宽度和高度。

    例如:

        

  4. IDE:集成开发环境。

  5.  id:指定控件的唯一标识,被保存在R文件中。

  6. 内边距 & 外边距:

    • 内边距:

      android:padding="8dp"    //四周各个边距
      
      细分:
      android:paddingLeft="8dp" //左边距
      android:paddingRight="8dp" //右边距
      android:paddingTop="8dp" //上边距
      android:paddingBottom="8dp" //下边距

 

    • 外边距:

      android:layout_margin="8dp"    //四周各个边距
      
      细分:
      android:layout_Left="8dp" //左边距
      android:layout_Right="8dp" //右边距
      android:layout_Top="8dp" //上边距
      android:layout_Bottom="8dp" //下边距

      记住:padding 是在 View 里面加 padding ,而 margin 增加 View 周围的空隙 (padding 是 View 的内边距;margin 是 View 外部的空间)。

  7. 特殊值:match_parent(与父控件等大)、 wrap_content (背景高度宽度自动调整)。

  8. dp (单位.density-independent pixels):密度无关像素 (视图、控件);

    sp (像素值单位):比例无关像素 (只适用于字体) 。

  9. 实现滚动:ScrollView  把所有东西放在 ScrollView 内,并且宽和高是 match_parent 。

    

     注: ScrollView 只可以包含一个项目。

 

初识 Android的更多相关文章

  1. 初识Android的ReactiveX

    初识Android的ReactiveX 开发一个复杂一点的Android应用都会用到网络请求,交互和动画.这些都意味着 要写很多的回调嵌套.这样的代码也被称为callback hell(回调地狱).这 ...

  2. 初识Android Studio

    刚开始接触Android Studio,很多不适应的地方,自己慢慢摸索,记录下了一些问题和解决途径. 为了能使用android虚拟机,需要下载镜像,镜像有基于arm架构的也有基于intelx86.x6 ...

  3. 初识android中的动画

    动画效果可以大大提高界面的交互效果,因此,动画在移动开发中的应用场景较为普遍.掌握基本的动画效果在成熟的软件开发中不可或缺.除此之外,用户对于动画的接受程度远高于文字和图片,利用动画效果可以加深用户对 ...

  4. 初识Android NDK

    本文介绍Windows环境下搭建Android NDK开发环境,并创建一个简单的使用Native代码的Android Application. 一.环境搭建 二.JNI函数绑定 三.例子 一.环境搭建 ...

  5. 初识Android && 搭建Android开发环境

    搭建Android开发环境需要的工具: JDK(Java Development Kit) Eclipse Android Sdk(Software Development Kit) ADT (And ...

  6. 1.2……初识Android开发

    Android体系结构 Dalvik VM(Android下的java虚拟机)与传统的JVM的区别 传统JVM 基于堆栈的架构 编写.java文件--->编译为.class文件--->打包 ...

  7. (一)初识Android

    第一节:手机操作系统简介 目前的主流智能操作系统有:Android , IOS , windows mobile ; Android 开源,属于谷歌公司,市场份额较大,前景广阔: IOS 属于苹果公司 ...

  8. 初识Android

    #Android项目的目录结构 Activity:应用被打开时显示的界面 src:项目代码 R.java:项目中所有资源文件的资源id Android.jar:Android的jar包,导入此包方可使 ...

  9. 初识-Android之智能短信项目相关技术整理

    标签页切换采用传统的TabHost: 采用TabActivty实现TabHost. 效果图-后补: 相关技术详解推荐: http://blog.csdn.net/zhouli_05/article/d ...

随机推荐

  1. Java知多少(112)数据库之删除记录

    删除数据表也有3种方案 一.使用Statement对象 删除数据表记录的SQL语句的语法是: delete from 表名 where 特定条件 例如 : delete from ksInfo whe ...

  2. 自己动手搭建 CAS(Central Authentication Service) 环境,为了单点登录(Single Sign On , 简称 SSO )

    介绍 刚刚搭建 CAS 成功了,现在记录下来,怕以后忘记,同时也给需要帮助的人.CAS 搭建需要服务端和客户端,服务端是 Java 写的,如果自己搭建则需要安装与配置 Java 环境.客户端可以是多种 ...

  3. forever守护nodejs进程

    客户端启动Node.js应用: node app.js # 方法一 npm start # 方法二 Express框架 这样可以正常启动应用,但是如果断开客户端连接,应用也就随之停止了.也就是说这样的 ...

  4. 配置visual studio code进行asp.net core rc2的开发

    1.安装.net core sdk https://github.com/dotnet/cli#installers-and-binaries,根据你的系统选择下载. 2.下载vscode的C#扩展插 ...

  5. 【转载】shell中 dd 命令

    转载自:http://blog.chinaunix.net/uid-24958038-id-3416169.html dd if=/dev/zero of=的含义是什么? 一.dd命令的解释 dd:用 ...

  6. Android 常见工具类封装

    1,MD5工具类: public class MD5Util { public final static String MD5(String s) { char hexDigits[] = { '0' ...

  7. mysql修改definer方法

    -- 函数.存储过程 select definer from mysql.proc; update mysql.proc set definer='billing@%';   -- 定时事件 sele ...

  8. sprint3(第八天)

    昨天忘了发博客,最近在整合前台和后台的内容,在sprint结束前应该能整合好,然后实现前后台的联系,实现点餐功能. 最近要准备大作业也要复习四六级考试,所以花在项目的时间比较少了,请老师谅解. 燃尽图

  9. ASP.Net中Session失效的一种编程思路

    在写一个客户的B/S结构应用程序时,突然发现一个技巧,不知道是否是MS的一个BUG,给相关的有研究的朋友原先考虑写一个检查Session的类,Session失效后,必须转向登陆页面,可每一个调用该类的 ...

  10. yyyy/M/d h:m:s 转换成 yyyy-MM-dd hh:mm:ss

    var arrTime = (dtime).replace("/", "-").replace("/", "-"); v ...