一: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. 13.Quick QML-RowLayout、ColumnLayout、GridLayout布局管理器介绍、并通过GridLayout设计的简易网站导航界面

    上章我们学习了:12.Quick QML-QML 布局(Row.Column.Grid.Flow和嵌套布局) .Repeater对象,本章我们继续来学习布局管理器 1.RowLayout.Column ...

  2. TLS Poison - When TLS Hack you

    0x00 前言 本次学习的是2020 Blackhat 的一篇文章When TLS Hacks you,简单来说,作者提出了一种新的SSRF攻击思路:利用DNS重绑定和TLS协议的会话恢复进行攻击.具 ...

  3. 读取ini配置文件 及 UI对象库

    读取ini配置文件 配置项 读取API 写入API 实战:UI 对象库 读取ini配置文件 配置项 在每个 ini 配置文件中,配置数据会被分组(比如下述配置文件中的"config" ...

  4. kubernetes 的API 介绍

    在API conventions doc中描述了API的全部协议. 在API Reference文档中描述了API的端点.资源类型和示例. 在Controlling API Access doc中讨论 ...

  5. 用Qt(C++)实现如苹果般的亮屏效果

    用Qt(C++)实现如苹果般的亮屏效果 苹果的亮屏效果可能有很多人没注意到,和其他大部分手机或电脑不同的是,苹果的亮屏特效不是简单的亮度变化,而是一个渐亮的过程.详细来说就是,图片中较亮的部分先显示出 ...

  6. Blog总结02(4~6次作业总结)

    Blog总结02(4~6次作业总结) 1.前言 (1)题目集04共有三道题目,第一题难度较大,第二题和第三题难度适中,第一题考察的知识点是 Java 中的字符串处理类以及正则表达式对输入字符串数据进行 ...

  7. Summary: DOM modification techniques

    Modifying an existing element We covered various ways that you can modify aspects of an existing ele ...

  8. 【VsCode】 实用插件列表

    1.IntelliJ IDEA Keybindings   -IDEA风格的 快捷键,熟悉JetBrain全家桶的不要错过: 2.Vue VSCode Snippets    -写Vue时好用的快捷键 ...

  9. hdu4415 不错的想法题

    题意: 一个人他有一定的血,有一些怪物,他去杀怪物,有的怪物杀死他后还可以在不费自己血的情况下任意杀死一些怪物,问你他最多杀死多少怪物,在最多杀怪前提下最好用多少血,(大体题意是这样). 思路: 首先 ...

  10. POJ3114强连通+spfa

    题意:       给你n个点,m条有向边,q询问,每次询问给两个数a,b输出a->b的最短路,但是题目有个限制,就是在一个环上的任意两点距离为0. 思路:       简单题目,直接强连通压缩 ...