• Button

    android:textAllCaps="false" // Button上的英文字符不转成大写

  • EditText

    android:maxLines="2" // 指定EditText最大行数为2行,超过2行时文本向上滚动。

  • ImageView

    setImageResource(R.drawable.picture)

  • ProgressBar

    ProgressBar.getProgress()

    ProgressBar.setProgress(int)

    ProgressBar.setMax(int)

  • AlertDialog

    setCancelable(boolean)

    setPositiveButton()

    setNegativeButton()

    show()

  • ProgressDialog

    setCancelable(boolean)

    show()

    继承自AlertDialog

  • RelativeLayout

    android:layout_centerInParent="true"

    android:layout_alignLeft // 表示让一个控件的左边缘和另一个控件的左边缘对齐

  • PercentFrameLayout

    compile 'com.android.support:percent:25.1.0'

    <android.support.percent.PercentFrameLayout>

    <android.support.percent.PercentRelativeLayout>

    LinearLayout本身就有百分比,不需要再添加

    为了兼容低版本,使用xmlns:app

    app:layout_widthPercent="50%"

    用这个就不用再写android:layout_width

  • 在布局中引入其他布局文件

    <include layout="@layout/toolbar" />

    这样使得不必在每个Activity的界面都实现一遍这个布局。

  • padding 和 margin

    <RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity"> <Button
    android:id="@+id/btn_test"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_margin="30dp"
    android:padding="50dp"
    android:text="@string/test"/> </RelativeLayout>

  • Android控件的三个属性

    属性 说明
    View.VISIBLE 可见
    VIEW.INVISIBLE 不可见,但占据原来的位置
    VIEW.GONE 完全消失

    setVisibility(从上面三个选)

  • 创建自定义控件

    public class TitleLayout extends LinearLayout { 
    
      public TitleLayout(Context context, AttributeSet attrs) {
    super(context, attrs);
    LayoutInflater.from(context).inflate(R.layout.title, this);
    // 可以在这里注册布局内按钮的点击事件
    }
    }
    <com.域名.包名.TitleLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"/>

Android笔记(三):View一些值得注意的地方的更多相关文章

  1. Android笔记三十三.BroadcastReceiver使用

        广播是一种广泛运用在应用程序之间传输信息的机制,而BroadcastReceiver是对发送出来的广播进行过滤接收并响应的一类组件. BroadcastReceiver本质上是一种全局监听器. ...

  2. Android笔记三十四.Service综合实例二

    综合实例2:client訪问远程Service服务 实现:通过一个button来获取远程Service的状态,并显示在两个文本框中. 思路:如果A应用须要与B应用进行通信,调用B应用中的getName ...

  3. Android EditText的使用及值得注意的地方

    Android上有很多输入法应用,每种输入法都有各自的特点,输入法多数时候是和EditText配合使用,结合我自己的亲身实践分享一下使用EditText过程中遇到的一些问题及解决方法. 设置默认输入法 ...

  4. 1.Android 视图及View绘制分析笔记之setContentView

    自从1983年第一台图形用户界面的个人电脑问世以来,几乎所有的PC操作系统都支持可视化操作,Android也不例外.对于所有Android Developer来说,我们接触最多的控件就是View.通常 ...

  5. Android笔记--View绘制流程源码分析(二)

    Android笔记--View绘制流程源码分析二 通过上一篇View绘制流程源码分析一可以知晓整个绘制流程之前,在activity启动过程中: Window的建立(activit.attach生成), ...

  6. Android笔记--View绘制流程源码分析(一)

    Android笔记--View绘制流程源码分析 View绘制之前框架流程分析 View绘制的分析始终是离不开Activity及其内部的Window的.在Activity的源码启动流程中,一并包含 着A ...

  7. Android Fragement学习笔记(三)----PreferenceFragment的使用

    相信大家对Perference都比較熟悉了,也就是我们常说的偏好设置,首选项设置,能够保存一些数据,比如我们在上一次使用的时候的一些内容,希望在下一次启动后依旧生效,而不须要再进行配置那么麻烦.一般这 ...

  8. Android Fragement学习笔记(三)----PreferenceFragment使用

    我相信每个人都Perference大家都比较熟悉,这就是我们常说的偏好,首选项设置,一些数据可以保存.例如,一些元件的,我们使用上次.希望下次启动后仍然生效,烦.一般这个时候我们便会使用perfere ...

  9. Android笔记——Android中数据的存储方式(二)

    我们在实际开发中,有的时候需要储存或者备份比较复杂的数据.这些数据的特点是,内容多.结构大,比如短信备份等.我们知道SharedPreferences和Files(文本文件)储存这种数据会非常的没有效 ...

随机推荐

  1. Android(java)学习笔记257:JNI之helloword案例(利用NDK工具)

    1.逻辑思路过程图: 2.下面通过一个HelloWorld案例来说明一下JNI利用NDK开发过程(步骤) 分析:我们在Win7系统下编译的C语言代码,我们知道C语言依赖操作系统,不能跨平台,所以我们要 ...

  2. 安装Linux和Windows的双系统

    平时使用较多的操作系统是Windows,想玩玩Linux平时也是在虚拟机上,强迫症的怎么能忍,一直想装个双系统,也能强迫自己练习Linux命令,之前重装系统的时候也试着装了一下,但是准备不够充分.结果 ...

  3. 嵌套repeater

    通过外层repeater的值来进行内层repeater的数据绑定 前台代码部分: <asp:repeater runat="server" id="repeater ...

  4. 【转】深入理解Java内存模型(二)——重排序

    数据依赖性 如果两个操作访问同一个变量,且这两个操作中有一个为写操作,此时这两个操作之间就存在数据依赖性.数据依赖分下列三种类型: 名称 代码示例 说明 写后读 a = 1;b = a; 写一个变量之 ...

  5. iOS改变图片尺寸

    - (UIImage *)originImage:(UIImage *)image scaleToSize:(CGSize)size { UIGraphicsBeginImageContext(siz ...

  6. pragram once

    #pragma once   [1]#pragma once这个宏有什么作用? 为了避免同一个文件被include多次,C/C++中有两种宏实现方式:一种是#ifndef方式,一种是#pragma o ...

  7. Foj1675数论

    http://acm.fzu.edu.cn/problem.php?pid=1675 首先必须知道一点数论的基本公式 (a-b) %c =0 -----> a%c=b%c 首先通过大数取余求出目 ...

  8. 网页、php脚本的编码问题

    对于程序的编码问题,做一次总结,我们清楚,从对象来说,编码可能涉及到三到四个对象 一.首先是请求终端: 这个请求终端有可能是浏览器端,从浏览器端发起网页请求:Ajax请求:也有可能是程序内部的Api调 ...

  9. centos 下mysql操作

    MySQL名字的来历MySQL是一个小型关系型数据库管理系统,MySQL被广泛地应用在Internet上的中小型网站中.由于其体积小.速度 快.总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为 ...

  10. Docker for Windows

    Docker for Windows使用简介 在上一篇文章中,通过演练指导的方式,介绍了在Docker中运行ASP.NET Core Web API应用程序的过程.本文将介绍Docker for Wi ...