一:UI开发

  • 由于我们使用了android:layout_weight属性,此时控件的宽度就不由android:layout_width来决定了,这里指定成0dp是一种比较规范的写法。

    android:orientation="horizontal">
    
        <EditText
    android:id="@+id/inputMessage"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_weight="1"
    android:hint="Type something"
    android:maxLines="2"/> <Button
    android:id="@+id/send"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_weight="0.5"
    android:text="send" />

    所以inputMessage和send在水平方向上以1:0.5比例划分。

  • android:layout_margin:本元素离上下左右间的距离

    android:layout_marginStart:本元素离开始的位置的距离

    android:layout_marginEnd:本元素离结束位置的距离

  • xml中以layout_开头的属性都属于布局参数,与其他属性不同的是,部件的布局参数是给它爸爸——父部件做指示的,告诉父部件如何安排自己, 例如layout_width

二:fragment

  • fragment通过继承自 Fragment 的类来控制布局,在自己定义的fragment类中,要加载想要显现的布局layout.
  • <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="horizontal"
    android:layout_width="match_parent"
    android:layout_height="match_parent" > <fragment
    android:id="@+id/leftFrag"
    android:name="com.example.fragmenttest.LeftFragment"
    android:layout_width="0dp"
    android:layout_weight="1"
    android:layout_height="match_parent" /> <FrameLayout
    android:id="@+id/rightLayout"
    android:layout_width="0dp"
    android:layout_weight="1"
    android:layout_height="match_parent"
    </FrameLayout> </LinearLayout>

    在上面的代码中,标签为fragment的要通过android:name指定默认的fragment类来加载类中加载的布局layout.下面的frameLayout则会通过动态指定的方式添加。

  • fragemnt实体类加载自己选定的layout.xml,然后在activity中加载自己选定的fragment来把fragment的layout.xml放在antivity.xml中的指定位置上(动态加载)

三:广播

  • 如果有一个动态注册的广播接收器和一个静态注册的广播接收器可以同时接受一个广播,则有序广播会先被动态注册的接受,除非静态注册的写了优先级(大于0就可以先收到,不能等于0)

四:SQLite数据库存储

db.execSQL(SQL语句)//对数据库执行SQL语句,创建表和废弃表时常用

//添加数据
val db = dbHelper.writableDatabase
db.insert(表名, null, ContentValues实例) //更新数据
db.update(表名, ContentValues实例, 用或者不用?占位符的类似SQL语句的where部分, arrayOf(前一个参数的占位符内容))
db.update("Book", values, "name = ?", arrayOf("白说", “简爱”))//修改name属性为白说或者简爱的行 //删除数据
db.delete(表名, 用或者不用?占位符的类似SQL语句的where部分, arrayOf(前一个参数的占位符内容))
db.delete("Book", "price > ?", arrayOf("100"))//价钱大于100块的书都会被删除,删除一个元组,即一行

学习android开发的一些笔记的更多相关文章

  1. Android开发艺术探索笔记——View(二)

    Android开发艺术探索笔记--View(二) View的事件分发机制 学习资料: 1.Understanding Android Input Touch Events System Framewo ...

  2. Android开发艺术探索笔记—— View(一)

    Android开发艺术探索笔记 --View(一) View的基础知识 什么是View View是Android中所有控件的基类.是一种界面层控件的抽象. View的位置参数 参数名 获取方式 含义 ...

  3. Android开发艺术探索笔记——第一章:Activity的生命周期和启动模式

    Android开发艺术探索笔记--第一章:Activity的生命周期和启动模式 怀着无比崇敬的心情翻开了这本书,路漫漫其修远兮,程序人生,为自己加油! 一.序 作为这本书的第一章,主席还是把Activ ...

  4. 「Android 开发」入门笔记

    「Android 开发」入门笔记(界面编程篇) ------每日摘要------ DAY-1: 学习笔记: Android应用结构分析 界面编程与视图(View)组件 布局管理器 问题整理: Andr ...

  5. 阿里内部资料:Android开发核心知识笔记共2100页,58万字,完整版开放下载

    作为一个3-5年的Android工程师,我们经常会遇到这些瓶颈: 1.技术视野窄长期在小型软件公司,外包公司工作,技术视野被限制的太厉害 2.薪资提升难初中级Android岗位薪资上升空间有限,基本上 ...

  6. 想学习Android开发

    最近被别人说知识面窄,心里受伤了.准备学学Android开发,如果能在手机里运行自己写的app,那是多么high ~~~ Android开发需要看什么资料呢? 说明:本人一直从事windows下的C+ ...

  7. 跟Google学习Android开发-起始篇-构建你的第一个应用程序(4)

    说明:此系列教程翻译自Google Android开发者官网的Training教程,利用Chome浏览器的自动翻译功能作初译,然后在一些语句不顺或容易造成误解的地方作局部修正.方便英文不好的开发者查看 ...

  8. android初级应用到高端架构教程------ 完整体系化学习android开发

    系统的学习android开发技术,从应用到底层,再到架构,告别乱糟糟的学习方式,不再是抓不住重点.从上到下贯通,全面学习android开发.让你拥有清晰的思路,一步步学习android开发! 一般而言 ...

  9. Ubuntu虚拟机+ROS+Android开发环境配置笔记

    Ubuntu虚拟机+ROS+Android开发环境配置笔记 虚拟机设置: 1.本地环境:Windows 7:VMWare:联网 2.虚拟环境 :Ubuntu 14.04. 比較稳定,且支持非常多ROS ...

随机推荐

  1. 1. HTML <fieldset> 标签

    定义和用法 fieldset 元素可将表单内的相关元素分组. <fieldset> 标签将表单内容的一部分打包,生成一组相关表单的字段. 当一组表单元素放到 <fieldset> ...

  2. [Vue warn]: Unknown custom element: <terminal-process> - did you register the component correctly? For recursive components, make sure to provide the "name" option.

    Vue组件注册报错问题 import 不要加{},排查出如果页面引用单个组件的时候不要加上{}中括号,引入多个组件时才能派上用场,中括号去除问题即可解决.

  3. Salesforce学习之路(七)Visualforce结合Reports展示图表

    Salesforce作为一款CRM系统,个人觉得最重要的环境便是在于数据的展示和联动,而Salesforce也本身提供了相当强大的功能,Report在展示图表的方面十分强大,前段时间更是宣布以157亿 ...

  4. 【Https】Https为什么能保证安全?

    HTTPS是在HTTP上建立SSL加密层,并对传输数据进行加密,是HTTP协议的安全版. 反观HTTPS协议,它比HTTP协议相比多了以下优势(下文会详细介绍): 数据隐私性:内容经过对称加密,每个连 ...

  5. 手机改 user模式为debug模式

    logcat 是Android中一个命令行工具,可用于监控手机应用程序的log信息.网上相关的教学很多,这里只想把自己折腾 2 部手机(一个是三星S4 I9500 港水,Android 5.01,一个 ...

  6. LA3989女士的选择

    题意:       给你n个男士n个女士,然后给你每个男士中女士的排名,和每个女士中每个男士在他们心中的排名,问你是否可以组成稳定的舞伴,如果存在以下情况(1)男生u和女生v不是舞伴,他们喜欢对方的程 ...

  7. hdu 5020 求三点共线的组合数(容器记录斜率出现次数)

    题意:       给你n个点,问你3点共线的组合数有多少,就是有多少种组合是满足3点共线的. 思路:      一开始抱着试1试的态度,暴力了一个O(n^3),结果一如既往的超时了,然后又在刚刚超时 ...

  8. hdu2102 水搜索

    题意:                                    A计划 Problem Description 可怜的公主在一次次被魔王掳走一次次被骑士们救回来之后,而今,不幸的她再一次 ...

  9. Linux文件共享服务之NFS

    NFS(Network File System) 网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源.在NFS的应用中,本地NFS的客户端应用可 ...

  10. hdu4901 枚举状态(找集合对S(xor) ==T(and))

    题意:      给你一个串数字,然后让你在这里面挑取两个集合S ,T,集合的要求是 (1)不能为空 (2)S集合的所有元素必须在T集合的左边 (3)S集合的XOR == T集合的AND      问 ...