GitOPEN's Home.

Android M (API23) 中对权限的授权处理
前言Android M的发布,最重要的提升就是权限的控制,这么多年来Android App的权限滥用状况将逐步得到改善。 在API 23中,如果我们将compileSdkVersion和targetSdkVersion同时指定为23,而且我们没有显式的提醒用户去授予权限, 那么将导致App运行的崩溃。 因此,接下来,就写一个原生的PermissionsUtil工具类,来解决这个问题。 重要权限列表 另外,Android官方手册中也有描述,可以详细阅读:Permissions 效果 我喜欢用Gif动图来直观的展示效果! 函数 ActivityCompat.checkSelfPe...
《Monkey Android》第15课Spinner和AutoCompleteTextView
通过本节课可以学习到的内容: Spinner的用法 AutoCompleteTextView的用法 实例代码: 运行效果参见本课程示例App:安卓猴Demos github地址:https://github.com/opengit/MonkeyAndroid Spinner的用法Spinner,俗称下拉列表,它提供了一组固定的值或选项,允许用户从中选择一个作为默认的状态。 AutoCompleteTextView的用法AutoCompleteTextView,自动完成文本框,用户在输入时给予补全提醒。 效果图 Activity的源码12345678910111213141...
《Monkey Android》第14课ToggleButton和RatingBar
通过本节课可以学习到的内容: ToggleButton的用法 RatingBar的用法 实例代码: 运行效果参见本课程示例App:安卓猴Demos github地址:https://github.com/opengit/MonkeyAndroid ToggleButton的用法ToggleButton,状态开关按钮,例如ON/OFF,它允许用户在两者之间进行切换。Switch,开关,类似于生活中的白色墙壁开关。 RatingBar的用法RatingBar,它是SeekBar和ProgressBar的扩展,用星型来显示等级评定。 效果预览 Activity源码1234567...
《Monkey Android》第13课CheckBox和RadioButton
通过本节课可以学习到的内容: CheckBox的用法 RadioButton的用法 实例代码: 运行效果参见本课程示例App:安卓猴Demos github地址:https://github.com/opengit/MonkeyAndroid 效果图 CheckBox和RadioButton的用法CheckBox,复选框,它允许用户选择一个或者多个。RadioButton,单选按钮,只能选取一个选项。 xml文件源码: 一些用到的xml属性的含义已经在注释中给出。 12345678910111213141516171819202122232425262728293031...
《Monkey Android》第12课ImageView
通过本节课可以学习到的内容: ImageView的用法 ImageView的XML属性 实例代码: 运行效果参见本课程示例App:安卓猴Demos github地址:https://github.com/opengit/MonkeyAndroid ImageView的用法ImageView顾名思义,就是图片视图,用来显示静态图片。 12345678910111213141516171819202122<ImageView android:id="@+id/imageview_normal" android:layout_width="wrap_content" ...
《Monkey Android》第11课Button和ImageButton
通过本节课可以学习到的内容: Button的用法 Button的样式 ImageButton的用法 点击事件的写法(之前已经讲过,不知还会否?) 实例代码: 运行效果参见本课程示例App:安卓猴Demos github地址:https://github.com/opengit/MonkeyAndroid Button的用法 按钮,可以按下它,或者点击,由用户来执行一个动作或者操作。 Button的xml写法: 12345678910<Button android:id="@+id/btn_btn" android:layout_width="match_par...
《Monkey Android》第10课TextView和EditText
通过本节课可以学习到的内容: TextView的用法 EditText的用法 登陆框实例 实例代码: 运行效果参见本课程示例App:安卓猴Demos github地址:https://github.com/git0pen/MonkeyAndroid TextView的用法 顾名思义,TextView就是文字视图,即显示文字的控件。 TextView的xml写法: 123456789101112<TextView android:id="@+id/tv_login" android:layout_width="wrap_content" android:lay...
《Monkey Android》第9课Toast土司
通过本节课可以学习到的内容: Toast显示普通文本 Toast显示图片 Toast显示图片和文字 实例代码: 运行效果参见本课程示例App:安卓猴Demos github地址:https://github.com/git0pen/MonkeyAndroid Toast显示普通文本 简称土司,它用来在当前app的界面上弹出一个提示信息,并且会自动消失。 看下Toast到底怎么写: 12Toast.makeText(this, "我是短时间土司1号!我的显示时长是Toast.LENGTH_SHORT", Toast.LENGTH_SHORT).show();Toast.m...
《Monkey Android》第8课FrameLayout、GridLayout
通过本节课可以学习到的内容: FrameLayout的用法 GridLayout的用法 实例代码: 运行效果参见本课程示例App:安卓猴Demos github地址:https://github.com/git0pen/MonkeyAndroid FrameLayout 帧布局,在这种布局下,每个添加的子控件都被放在布局的左上角,并覆盖在前一个子控件的上层;此外,FrameLayout中的子控件的位置不能被指定。 GridLayout 自Android4.0版本(API level 14)后,新增的网格布局。 注意:如果要达到网格的效果,推荐使用LinearLayou...
《Monkey Android》第7课RelativeLayout、TableLayout
通过本节课可以学习到的内容: RelativeLayout以及它的相关属性 TableLayout以及它的特有属性 实例代码: 运行效果参见本课程示例App:安卓猴Demos github地址:https://github.com/git0pen/MonkeyAndroid RelativeLayout 顾名思义,RelativeLayout就是相对布局,置于其中的控件在摆放的时候需要相对于布局中的其它控件来摆放。 RelativeLayout相关属性 这些属性十分“众多”,因此大致了解即可,关键是在敲代码的过程中熟练运用。 — 属性 作用 第1组属性 ...
体验极速Android Sdk更新与下载
前言国内下载或者更新Android SDK的速度奇慢,福利来了,专门解决这个问题。 2015-09-07更新其他源部分网友反应,腾讯的Android SDK镜像不可用,再分享一个速度比较快的。 配置说明:东软信息学院开源镜像站 Android SDK 配置说明 2015-08-16更新腾讯Bugly Android SDk 镜像使用指南 腾讯Bugly Android SDk 镜像 地址 1.打开独立Android SDK 管理器,在Android Studio中打开**: 2.菜单依次打开Tools–>Manage Add-on Sites...–>User Defin...
《Monkey Android》第6课点击事件的四种写法
通过本节课可以学习到的内容: Button和TextView的简单使用 LinearLayout的用法 点击事件的4种写法 LinearLayout中的Button、TextView布局文件的源码: 123456789101112131415161718192021222324252627282930313233343536373839404142<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" ...
我的开发环境
我的开发环境最近在写第二个系列文章《Monkey Android》,目标定位Android初学者,因此不得不谈论一下他们很关心的开发环境的问题。在系列文章中我并没有设计这方面的讨论,原因是过多的纠结于开发环境会使学习的时间成本大大增加。 在这篇文章中,我介绍一下自己的开发环境,各位初学者就浅尝辄止吧! Windows还是Ubuntu?如果预算充足,那么用MBP最舒服;如果懒得折腾与适应,手边的Windows PC最方便;如果要找到一个平衡点,那么Ubuntu PC最适合。 Ubuntu昨天在我的Thinkpad上配置了基于Ubuntu系统的Android开发环境,用着非常顺手。 全新硬盘...
《Monkey Android》第5课之剖析第一个App
通过本节课可以学习到的内容: 第一个App最重要的三个文件 MainAcivity.java代码分析 activity_main.xml代码分析 AndroidManifest.xml代码分析 最重要的三个文件我们的第一个项目FirstDemo.java建立以后,Android Studio首先展示给我们的就是activity_main.xml和MainAcivity.java源文件,另外,还有一个无比重要的文件AndroidMenifest.xml,下面我们着重理解这三个文件的作用以及代码的含义。 MainAcivity.java代码分析顾名思义,Main的意思是主要的,Ac...
《Monkey Android》第4课之运行第一个App
通过本节课可以学习到的内容: 运行第一个App 学习几个adb命令 在真机上运行它 隔空运行调试App 运行第一个App第1步 打开Android Studio,并打开上节课中我们创建的Genymotion模拟器,点击Android Studio的工具栏中的绿色实心向右箭头运行按钮,开始Build项目,稍等弹出设备选择界面,如图: 第2步 点击Next后,打开Android5.1模拟器,可以看到第一个App已经运行了!如图: 学习几个adb命令第1步 将SDK的platform-tools文件夹加入到系统环境变量中。 第2步 打开你的Genymotion模拟器,打开cmd命...
《Monkey Android》第3课之Android Studio简介与模拟器
通过本节课可以学习到的内容: Android Studio新建工程 初识Android Studio真面目 用Android模拟器运行Android 5.1.1系统 Android Studio新建工程第1步: 打开Android Studio,点击Start a New Android Studio project。如图: 第2步: 按照图中解释,填写 Application Name 等信息。如图: 第3步: 选择App的运行设备类型和相应的系统版本。如图: 第4步: 选择新建Activity的类型,我们保持默认。如图: 第5步: 需要填写Activity Name...