
Android零基础学习
android开发相关技术,android studio的使用教程。包括图形用户界面制作、数据库操作、以及其他人机交互技术。
狮子座的程序员
不积跬步无以至千里,不积小流无以成江海
展开
-
Android开发——项目实例(七)随机取数(带打包源码和APK)
项目背景害,考研题目啊,汤老师的1800道题做完了,错题记录了下来,错题总要回顾的吧!可是鉴于我是个随缘的人,觉得如果一天复习个8道题,轮着来轮到后面知识点早忘了许多了,害,不公平,那随机呗,抛硬币???!!不,写个随机取数的小程序拉倒。。。项目功能输入最大数,点击按钮进行随机取数并显示运行截图源码及APK链接链接:https://pan.baidu.com/s/1DkQiVR-zLdMqcKKaWT36VQ提取码:ddq7复制这段内容后打开百度网盘手机App,操作更方便哦...原创 2020-06-10 18:41:46 · 598 阅读 · 0 评论 -
Android开发——项目实例(六)自己的密码本(带打包源码与APK)
项目功能1.能够录入应用名称,以及对应的密码2.能够跟据应用名称进行模糊查询,显示对应的密码3.能够显示添加过的全部密码4.能够进行修改和删除添加过的密码运行截图源码链接链接里有源码和编译好的APK链接:https://pan.baidu.com/s/1E8PVqQqZq8DruMzg9fZKaQ提取码:la8c...原创 2020-06-10 17:05:08 · 1273 阅读 · 7 评论 -
Android开发——布局管理基础(一)LinearLayout线性布局
LinearLayout线性布局:线性布局即横向线性或竖向线性的布局各个组件下图为竖向线性:必要属性(attribute):1.android:layout_width——宽度取值(value):wrap_content:自适配 match_parent:与上级适配2.android:layout_height——高度取值:wrap_content:自适配...原创 2019-04-15 16:38:52 · 333 阅读 · 0 评论 -
Android开发——布局管理基础(二)RelativeLayout相对布局
RelativeLayout线性布局:线性布局即相对某个组件进行上下左右的布局必要属性(attribute):1.android:layout_width——宽度取值(value):wrap_content:自适配 match_parent:与上级适配2.android:layout_height——高度取值:wrap_content:自适配 match_pare...原创 2019-04-15 16:54:22 · 362 阅读 · 0 评论 -
Android开发——控件基础(一)TextView组件:常用方法、示例代码
TextView组件功能:显示文字,相当于java中的label标签组件常用方法:1.设置字体大小和颜色android:textSize="20dp"android:textColor="@color/colorBlack"2.无法显示时显示省略号android:maxLines="1"android:ellipsize="end" //末尾显示省略号3.设...原创 2019-04-15 22:54:23 · 600 阅读 · 0 评论 -
Android开发——控件基础(二)Button组件:常用方法、示例代码
效果图片:常用方法(只写重点):1.设置文字大小和颜色android:textSize="20dp"android:textColor="@color/colorAccent"2.自定义背景形状(设置圆角按钮)3.android:textAllCaps"false" 取消默认大写4.enabled:false //设为不可操作在dra...原创 2019-04-19 18:02:20 · 621 阅读 · 1 评论 -
Android开发——控件基础(二)Button组件:设置button样式(圆角、描边)
效果图实现代码(只写drawable的样式代码)<shape xmlns:android="http://schemas.android.com/apk/res/android"android:shape="rectangle"><stroke android:width="2dp" android:color="#82d7f6"/><solid...原创 2019-04-24 21:26:17 · 1007 阅读 · 0 评论 -
Android开发——控件基础(三)EditText组件以及简单的登录界面
实现界面:EditText常用属性:android:text 设置显示在EditText中的内容android:maxLength 用来限制EditText中可以输入的字符个数android:inputType 设置输入内容,比如textpassword、number、date等android:hint 设置显示在EditText上的提示信息android:numeric ...原创 2019-04-19 19:04:09 · 911 阅读 · 0 评论 -
Android开发——控制基础(四)ImageView组件:属性、示例代码
实现界面:常用属性:android:background 设置背景android:src 设置图片内容android:scaleType 设置缩放比代码实现:activity_image_view.xml:布局文件<?xml version="1.0" encoding="utf-8"?><LinearLayout xml...原创 2019-04-20 00:15:28 · 341 阅读 · 0 评论 -
Android开发——控件基础(五)RadioButton组件:属性、示例代码
实现界面:常用属性:android:text 设置选项文本android:gravity="center" 设置居中android:button="@null" 设置无按钮,配合自定义背景使用android:textSize 设置文本字体大小android:checked="true" 设置默认选中android:background 设...原创 2019-04-19 20:51:17 · 1812 阅读 · 0 评论 -
Android开发——控件基础(六)CheckBox组件:属性、示例代码
实现界面:复选框经典用法、自定义复选框按钮、设置复选框监听常用属性:android:text 设置选项文本android:button 自定义复选框按钮android:textSize 设置文本字体大小android:checked="true" 设置默认选中android:textColor 设置文本颜色android:textSize ...原创 2019-04-19 22:26:15 · 2942 阅读 · 0 评论 -
Android开发——控件基础(七)ListView组件:示例代码
ListView取消下划线android:divider="@null"取消滚动条android:scrollbars="none"运行图片:代码示例:ListViewActivity:java文件package com.example.administrator.exercise.ListView;import android.support.v7.a...原创 2019-04-20 20:01:01 · 298 阅读 · 0 评论 -
Android开发——控件基础(八)GridView组件:属性、示例代码、创建思路
网格组件例子(图片):重要属性 android:numColumns=”auto_fit” //GridView的列数设置为自动 android:verticalSpacing=”10dp” //两行之间的边距 android:horizontalSpacing=”10dp” //两列之间的边距 android:columnWidth=”90d...原创 2019-04-17 22:37:56 · 440 阅读 · 0 评论 -
Android开发——控件基础(九)ScrollView滚动控件:实现代码
目标问题:因为内容过多,普通的LinearLayout和RelativeLayout无法显示整个页面。需要用到滚动视图。重要属性:android:orientation //横向滚动、竖向滚动android:scrollbars="none" //取消滚动条代码实现:很多button导致无法显示全部,利用滚动视图显示。布局文件:<?xml v...原创 2019-04-20 21:35:29 · 209 阅读 · 0 评论 -
Android开发——控件基础(十)ViewPager:实现页面的滑动切换
运行效果图:实现页面的滑动转换思维导图:首先要实现页面的滑动切换,必须使用Fragment(类似于Activity),这里不多说了,能来看这篇文章的应该都懂。使用ViewPager实现滑动功能。将给ViewPager一个FragmentAdpter适配器,并把所有的Fragment添加到适配器中。实现代码:FragmentApackage com.exam...原创 2019-06-17 13:40:09 · 1359 阅读 · 3 评论 -
Android开发——控件基础(十一)使用Tablayout需要导的包
Android Studiodependencies { ... compile 'com.android.support:appcompat-v7:26.0.0-alpha1' compile 'com.android.support:design:26.0.0-alpha1' //这个包!!!! ...}注:design版本要和appcompa...原创 2019-06-22 16:30:16 · 3017 阅读 · 4 评论 -
Android开发——基础控件(十二)Spinner下拉列表控件
Spinner提供了从一个数据集合中快速选择一项值的办法。默认情况下Spinner显示的是当前选择的值,点击Spinner会弹出一个包含所有可选值的dropdown菜单,从该菜单中可以为Spinner选择一个新值。上图显示的是Spinner常见的样式。这篇文章中我将讨论1.S...原创 2019-09-22 09:22:13 · 640 阅读 · 0 评论 -
Android开发——动态功能(一)Toast的常用操作:默认、居中、自定义
实现界面:下面的代码里有注释帮助理解常用方法:Toast.makeText(ToastActivity.this,"要显示的文字", Toast.LENGTH_SHORT).show(); //显示Toast,参数:当前页面内容,要显示的文字,显示的时长(Long与Short)Toast.setGravity(Gravity.CENTER,0,0) //设置居中...原创 2019-04-20 14:35:58 · 1179 阅读 · 0 评论 -
Android开发——动态功能(二)Toast按最后一次点击显示,不会排队显示好多次的方法
当前问题:点击很多次Toast,他会排队显示很多次,不会按照最后一次来显示。比如一个Toast显示2秒,点十次会用20秒来显示,而不是最后一次点击后显示2秒然后消失。实现结果:解决办法:设置一个把Toast封装起来,点击只会有一个Toast对象。代码实现:工具类(封装Toast的类):package com.example.administrator.exer...原创 2019-04-20 15:53:53 · 966 阅读 · 0 评论 -
Android开发——动态功能(三)Intent实现网页跳转的几种方式:代码示例
代码实现:常用显示1方法//显示1:直接创建调用//参数:当前页面内容,目标的class文件名称Intent intent = new Intent(JumpAActivity.this,JumpBActivity.class);startActivity(intent);//显示2:设置类名再调用//参数:当前页面内容,目标的class文件名称Intent intent...原创 2019-04-20 20:47:56 · 893 阅读 · 0 评论 -
Android开发——动态功能(四)fragment详解(一)
Fragment详解(一)初识FragmentFragment有自己的生命周期Fragment依赖于ActivityFragment通过getActivity获取所在的Activity;Activity通过FragmentManager的findFragmentById()或findFragmentByTag()获取FragmentFragment和Activity是多对多的关系...原创 2019-04-23 14:26:43 · 326 阅读 · 0 评论 -
Android开发——动态功能(四)fragment详解(二)点击替换
fragment详解(二)上一篇写到了把fragment在activity上显示这一篇写点击按钮实现fragment的替换示例代码在上篇基础上添加fragmentB的java文件package com.example.administrator.exercise.fragment;import android.app.Fragment;import android.os....原创 2019-04-23 14:55:04 · 353 阅读 · 0 评论 -
Android开发——动态功能(四)fragment详解(三)参数传递
Fragment详解(三)上一篇写到了点击替换fragment这一篇写传递参数给fragment示例代码修改前面FragmentA的代码和ContainerActivity代码FragmentA的java代码package com.example.administrator.exercise.fragment;import android.support.annotatio...原创 2019-04-23 15:24:19 · 455 阅读 · 0 评论 -
Android开发——动态功能(五)自定义Dialog对话框
运行效果图:模拟QQ退出登录界面的提示框。点击退出登录出现提示框,点击取消,退出登录框,点击确认退出,退出软件。设计思路:主界面:点击退出即可创建一个自定的mdialog提示框,并为提示框的按钮设置监听(为什么要在这里设置呢,是因为按钮监听进行的操作是对dialog本身进行的,如果在dialog自身类设置监听不好操作)。mdialog类:设计一个layout布局文件,并掉用...原创 2019-06-16 23:35:56 · 1097 阅读 · 4 评论 -
Android开发——数据存储(一)SharedPreferences轻量级数据存储
数据存储(一)SharedPreferences轻量级数据存储代码示例SharedPreferencesActivity的java代码package com.example.administrator.exercise.datastorage;import android.content.SharedPreferences;import android.support.v7.app.A...原创 2019-04-25 15:09:30 · 383 阅读 · 0 评论 -
Android开发——数据存储(二)File内部存储
Android开发——数据存储(二)File内部存储代码示例FileStorageActivity的java文件package com.example.administrator.exercise.datastorage;import android.content.SharedPreferences;import android.support.v7.app.AppCompatAct...原创 2019-04-25 16:55:19 · 351 阅读 · 0 评论 -
Android开发——数据存储(三)File外部存储
Android开发——数据存储(二)File外部存储代码示例FileOutStorageActivity的java文件package com.example.administrator.exercise.datastorage;import android.os.Environment;import android.support.v7.app.AppCompatActivity;i...原创 2019-04-25 17:49:02 · 463 阅读 · 2 评论 -
Android开发——数据存储(四)SQLite数据库存储
Android开发——数据存储(四)数据库存储运行结果图代码示例数据库的java类package com.example.administrator.exercise.DataBase;import android.content.Context;import android.database.sqlite.SQLiteDatabase;import android.datab...原创 2019-04-26 09:03:20 · 692 阅读 · 0 评论 -
Android开发——前面全部关于android开发学习的源码:组件、动态功能、数据存储
Android开发——前面全部关于android开发学习的源码:组件、动态功能、数据存储一个总工程,全部代码图片都在里面。链接:https://pan.baidu.com/s/1I9rhUTl2OeBtW6cQVswQ6Q提取码:lf6i...原创 2019-04-26 09:14:34 · 345 阅读 · 0 评论 -
Android开发——小技巧(二)修改APP图标和名字
在AndroidManifest.xml中第一个为图标第二个为名字原创 2019-05-06 19:36:15 · 9488 阅读 · 0 评论 -
Android开发——SQLite数据库(一)数据库的基础SQL语法
创建表create table employee( _id integer primary key autoincrement, /*主键,自增长*/ name varchar, /*字符串*/ salary double, /*小数*/ brithday data /*日期,可直接插入日期格式字符串*/)注意:建表时,...原创 2019-06-19 18:57:36 · 700 阅读 · 0 评论 -
Android开发——SQLite数据库(二)android studio创建数据库,进行插入、删除、更新、查询操作
运行效果:本文对数据库的建立、更新,数据的插入、更新、查询、删除,及事务的处理进行示例讲解。代码里有注释帮助理解。实现代码:activity_main.xml<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/...原创 2019-06-19 23:43:50 · 16244 阅读 · 35 评论 -
Android开发——SQLite数据库(三)小总结
数据库文件路径/data/data/packageName/databases/xx.db特点存储有一定关系结构的数据应用卸载时自动删除相关APISQLiteOpenHelper:数据库创建的帮助类SQLiteDatebase:操作数据库的对象Cursor:游标对象,被数据库查询操作返回操作建立一个数据库类集成SQLiteOpenHelper建立一个实体...原创 2019-06-20 18:46:24 · 311 阅读 · 0 评论 -
Android开发——网络请求(一)网络请求的API、授权和方法
网络请求的API网络请求的授权<!--网络权限--> <uses-permission android:name="android.permission.INTERNET"></uses-permission>网络请求的步骤1. 显示ProgressDialog2. 启动分线程3. 在分线程,发送请求,得到相应数据 ...原创 2019-06-20 18:55:17 · 4989 阅读 · 0 评论 -
Android开发——网络请求(二)网络请求操作HttpURLConnection
软件效果图输入网址,点击请求,在底部输出网址的响应code实现代码activity_main.xml<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="h...原创 2019-06-20 19:06:53 · 293 阅读 · 0 评论 -
Android开发——网络请求(三)OkHttp3包的导入
AndroidStudiodependencies { ...... compile 'com.squareup.okhttp3:okhttp:3.4.1' .....}原创 2019-06-22 16:32:07 · 9085 阅读 · 0 评论 -
Android开发——网络请求(四)OkHttpClient的使用
异步GET请求-new一个OkHttpClient;-构造Request对象;-通过前两步中的对象构建Call对象;-通过Call的enqueue(Callback)方法来提交异步请求;比如常用的把response传来的json数据转化成java对象等。//访问地址String url = "http://wwww.baidu.com";//创建OkHttpClient对象O...原创 2019-06-22 20:05:10 · 1313 阅读 · 1 评论 -
Android开发——消息机制(一)Handler介绍与相关API
为什么要用Handler?子线程不能更改主线程的UI 一般来说,所有显示在界面上的控件,都是由主线程创建的 每个主线程都有一个Handler,Handler运行在主线程里,它与了线程可以通过Message对象来传递数据Handler作用安排消息或Runnable 在某个主线程中某个地方执行 安排一个动作在不同的线程中执行相关API...原创 2019-06-20 22:34:30 · 249 阅读 · 0 评论 -
Android开发——消息机制(二)Handler的使用
Hanlder的使用方法1. 创建Handler成员变量对象,并重写其handleMessage()方法2. 在分/主线程创建Message对象3. 使用handler对象发送Message4. 主线程,在hanlerMessage()中处理消息Handler的原理运行效果图点击GET Submit1进行普通的同步工作点击GET Submit2使用Handle...原创 2019-06-20 22:45:25 · 292 阅读 · 0 评论 -
Android开发——消息机制(三)JSON解析与相关API
JSON介绍 JSON(JavaScript Object Notation)是一种轻量级的数据交换格式 本质就是具有特定格式的字符窜 JSON数据已经是客户端与服务器端交互的最常用的选择,已经很少使用xml来进行数据交互了JSON的数据结构 整体结构 Json数组:[] Json对象:{} Json数组的结构:[...原创 2019-06-22 16:45:08 · 241 阅读 · 0 评论