Android基础
文章平均质量分 59
一枚-狗子
这个作者很懒,什么都没留下…
展开
-
Android基础之Android studio友盟多渠道打包方式
0 概述写Android应用的人类每次发布App都需要面对数十个市场,而为了能够采集到市场的表现数据,就必须为每一个市场生成相应的apk包,也就是俗称的渠道包。1 参考链接android studio-友盟多渠道打包方式Android Studio多渠道打包Android Studio系列教程六–Gradle多渠道打包2 配置方法第一步 在AndroidManifest.xml里配置PlaceHol原创 2016-04-05 18:30:25 · 11166 阅读 · 2 评论 -
Android基础之底部导航(RadioButton&Fragment&ViewPager)
一、效果图二、源码1.bg_tab_home.xml(举一例子,其他RadioButton类同)<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@mipmap/ic_tab_ho原创 2015-11-04 12:15:54 · 893 阅读 · 0 评论 -
Android基础之使用自定义的字体库
如何让我们的应用不受系统字体的影响呢?下面小编将介绍下如何在Android应用里面使用自定义的字体库。前言:谨慎在listview/gridview中使用自定义字体,因为渲染耗时长,容易造成卡顿。1、assets/fonts下面是我们要使用的字体库文件。完整路径:assets/fonts/msyh.ttf2、核心代码是CustomMsyhTV.java。CustomMsyhTV继承自TextView原创 2015-11-06 21:21:50 · 569 阅读 · 0 评论 -
Android基础之利用百度地图定位获取当前城市
1.导入百度地图sdk和定位sdk2.需要用到的权限<!-- 这个权限用于进行网络定位 --> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <!-- 这个权限用于访问GPS定位 --> <uses-permission android:name="android.pe原创 2015-11-07 09:03:49 · 4171 阅读 · 4 评论 -
Android基础之Listview/GridView的onItemClick()获取不到焦点
1、问题描述 当使用自定义布局的Listview/GridView的时候,如果在item的布局文件里面存在Button或者CheckBox等控件以及其子类控件的时候,经常会碰到各种控件的点击事件冲突的情况,那么我们如何来处理istview/GridView中这种控件之间焦点冲突的情况呢?2、原因解析 可以触发Button的点击事件,但是item的点击事件并不会被触发,也就是说,Button控件抢原创 2015-11-11 10:39:17 · 1522 阅读 · 0 评论 -
Android基础之首页广告轮播效果
1 我们经常打开一个App会看到有广告图片轮播的效果,首先上效果图2 实现的过程2.1 轮播页面他是一个ViewPager2.2 然后我们使用RelativeLayout来把小圆点放置在图片上,然后滑动时动态修改小圆点的背景,就产生了滑动的效果2.3 自动滑动的效果,我们可以利用ScheduledExecutorService这个类来实现,他可以周期性的执行任务,这样就可以自动滑动了3 要点说明3.原创 2016-03-25 11:01:33 · 2351 阅读 · 3 评论 -
Android基础之如何实现国际化和各国Values文件夹命名
一、步骤 1、在该工程res中右击New—>Directory—>输入对应国家的values值 2、新建strings.xml放入相应的values位置 3、在对应国家的string.xml中编辑字符串 二、android多国语言文件夹汇总Arabic, Egypt (ar_rEG) —————————–阿拉伯语,埃及 Arabic, Israel (ar_rIL) ——————————-原创 2016-02-17 10:16:30 · 7870 阅读 · 0 评论 -
Android基础之AS如何打.aar包,并应用
1 问题描述Android studio导出的jar包即使不包含xml资源,在应用的时候会报资源找不到的错误。那么如何把源码和资源文件一起打包生成aar包?2 解决思路Android studio给我们提供一种更简便的方式——aar包,可以同时把class和res文件打包进去,现在的support v7 和gson-2.21就是aar打包方式。3 打包方法先把想要打包成sdk的项目做成Android原创 2016-05-14 12:23:17 · 8029 阅读 · 2 评论 -
Android基础之AS如何处理不同引用库(module)里jar的重复引起问题
Deal Method1 删除重复的jar包2 在build.gralde中添加android { ... dexOptions { jumboMode true }}3 删除项目根目录下的build文件夹app目录下的build文件夹(两个一定要都删除,不然上面的参数不好使)原创 2016-06-22 13:51:57 · 6038 阅读 · 0 评论 -
Flutter:编写第一个应用
1 开发环境搭建Flutter之Windows环境搭建Flutter基础篇(4)-- Flutter填坑全面总结解决Flutter Could not find lint-gradle-api.jar2 未完待续原创 2019-01-26 21:25:39 · 266 阅读 · 2 评论 -
Android UI之自定义SeekBar
一、 自定义SeekBar第一个Seekbar 背景是颜色,thumb是图片。二、实现seek.xml:<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_widt原创 2015-08-24 20:36:09 · 1710 阅读 · 0 评论 -
Android UI之最优ListView写法
ListView的一个经典实现动态增加、删除行的例子实现,代码如下:activity_main.xml<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.androi原创 2015-09-02 21:22:02 · 1674 阅读 · 2 评论 -
Android UI之shape和selector和layer-list的使用
1 概述shape、selector和layer-list的使用在Android UI设计中经常用到。比如我们要自定义一个圆角Button,点击Button有些效果的变化,就要用到。可以说,shape、selector和layer-list在美化控件中的作用是至关重要。2 Shape2.1 简介①作用:XML中定义的几何形状 ②位置:res/drawable/文件的名称.xml ③使用的方法:原创 2015-09-02 21:50:22 · 766 阅读 · 0 评论 -
Android UI之ListView+CheckBox(避免抢占焦点)
一、需求1、内容:单选,全选,全不选,删除选中Item,每个Item的单击事件保留(Item单击事件和选中checkbox是两个功能,不影响)。2、效果图3、要点通过重写listview的adapter,将listview和checkbox结合在一起,并且二者可以分别操作,两个功能不影响。4、备注如果需要实现“点击itemView选中checkbox”,点击链接点击itemView选中checkbo原创 2015-09-26 10:39:50 · 5457 阅读 · 3 评论 -
Android UI之EditText注意点收集
1 布局要点1.1 背景透明EditText的background属性设置为@null:android:background="@null"1.2 不可编辑android:inputType="none"1.3 EditTex多行输入及输入置顶android:minLines="3" android:maxLines="3" android:gravity="Top" // 即可实现内容置顶1原创 2015-10-30 10:37:22 · 499 阅读 · 0 评论 -
Android基础UI之ViewPager实现页卡的最新方法-简洁的TabLayout
1 概述Google在2015的IO大会上,给开发者们带来了全新的Android Design Support Library,里面包含了许多新控件,这些新控件有许多是把以前的一些第三方开源库官方化,实现起来更为简便,简直是开发者的福音。TabLayout 便是其中之一, TabLayout控件是用于选项卡切换。使用TabLayout实现底部Tab布局GitHub-MaterialDesignExa原创 2016-04-07 18:45:50 · 2297 阅读 · 6 评论 -
Android基础UI之5.0——过渡动画
1 概述在Android5.x中,Google对动画效果进行了更深一步的诠释,为Activity的转场效果设计了更加丰富的动画效果。Android5.x提供了三种Transition类型。 1、进入:一个进入的过渡(动画)决定activity中的所有的视图怎么进入屏幕。 2、退出:一个退出的过渡(动画)决定一个activity中的所有视图怎么退出屏幕。 3、共享元素:一个共享元素过渡(动原创 2016-07-25 15:08:19 · 2642 阅读 · 0 评论 -
Android基础之深入理解IntentService
1 概念 IntentService也是一个Service,是Service的子类;IntentService和Service有所不同,通过Looper和Thread来解决标准Service中处理逻辑的阻塞的问题。本质上是:Service+HandlerThread+Intent。 在我的另一篇博客详细解析:拥有Looper的线程–HandlerThread1.1 背景 ...原创 2017-01-17 20:48:22 · 1145 阅读 · 0 评论 -
Android基础之读取手机联系人显示listview并点击拨号(CursorAdapter)
一、CursorAdapter介绍1、继承于BaseAdapter是个虚类,它为cursor和ListView提供了连接的桥梁。 如:public abstract class CursorAdapter extends BaseAdapter2、注意cursor的必须要有个命名为”_id”的列。比如Contacts._ID就为”_id”3、必须实现以下函数: ①newView(Context原创 2015-09-09 15:06:43 · 3879 阅读 · 4 评论 -
Android基础之Intent跳转到系统应用中的拨号界面、联系人界面、短信界面
1、跳转到拨号界面,代码如下:(1)直接拨打Intent intentPhone = new Intent(Intent.ACTION_CALL, Uri.parse("tel:" + phoneNumber));startActivity(intentPhone);(2)跳转到拨号界面Intent intent = newIntent(Intent.ACTION_DIAL,Uri.parse("原创 2015-10-25 21:05:03 · 1394 阅读 · 0 评论 -
Android基础之创建快捷方式
1 权限<!-- 添加快捷方式 --> <uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" /> <!-- 移除快捷方式 --> <uses-permission android:name="com.android.launcher.permission.UNINST原创 2017-08-14 23:28:07 · 7207 阅读 · 2 评论 -
Android基础之欢迎滑动页面(最简洁方法)
一、效果图 二、源码1.activity_welcome_guide.xml<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" an原创 2015-11-03 21:22:48 · 4819 阅读 · 1 评论 -
Android基础之编写精美的聊天界面
1、activity_chat.xml<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#d8e原创 2015-09-26 11:47:29 · 2733 阅读 · 0 评论 -
Android基础之欢迎滑动页面(页面布局&底部点点)
一、效果图 二、源码1.view_pager_first.xml<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:lay原创 2015-11-03 21:52:33 · 3704 阅读 · 2 评论 -
Android基础之Realm快速入门教程
—————————-官网—————————1 介绍安卓开发的最新趋势,Realm是一个可以替代SQLite以及ORMlibraries的轻量级数据库。相比SQLite,Realm更快并且具有很多现代数据库的特性,比如支持JSON,流式api,数据变更通知,以及加密支持,这些都为安卓开发者带来了方便。在这篇快速入门教程中,将学到Android版Realm的基础知识。本教程我们使用的是Realm v0.原创 2016-03-23 14:56:00 · 704 阅读 · 0 评论 -
Android基础之倒计时多种实现方式与倒计时暂停重启
1 倒计时方法介绍handler+postDelayed() 方式 Timer + TimerTask + handler 方式 ScheduledExecutorService + handler 方式 RxJava 方式 CountDownTimer 方式1.11.21.31.4 RxJava 方式(1)RxJava的Observable.timer方法Observable.timer原创 2017-06-26 14:17:41 · 6061 阅读 · 0 评论 -
Android基础之IntentFilter的匹配规则
1 启动Activity的方式(1)启动Activity分为两种,显示调用和隐式调用。显示调用需要明确的指定被启动对象的组件信息,包括包名和类名;而隐式意图则不需要明确指定调用信息。原则上一个intent不应该即是显式又是隐式调用,如果二者共存的话以显式调用为主。(2)隐式调用需要intent能够匹配目标组件的IntentFilter中所设置的过滤信息,一个Activity钟可以有多个inte...原创 2019-02-26 00:21:13 · 1097 阅读 · 0 评论 -
android基础之监听回调实现
一、 回调函数回调函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用为调用它所指向的函数时,我们就说这是回调函数。回调函数不是由该函数的实现方直接调用,而是在特定的事件或条件发生时由另外的一方调用的,用于对该事件或条件进行响应。二、实现方式一(三步骤)1、创建回调接口/** * 1、创建回调接口 */public int...原创 2015-09-26 15:57:40 · 4045 阅读 · 0 评论 -
Android基础之最新正则表达式
1 正则表达式解析json数据public class RegularExpression { public static void main() {// String json = "{name:\"guan\",age:18}"; String json = "{name:\"guan1\",age:18,obj:{name:\"guan2\"}}";原创 2017-06-20 11:57:30 · 6408 阅读 · 1 评论 -
Android基础之intent传值方法和传递大量数据方案
1 Android之intent传值的三种方法(1) startActivity(); (2) startActivityForResult(); (3)3 调用在下个activity自定义的方法”actionStart()”,也就是最佳的方法。2 最常用传值跳转:startActivity()方法2.1 MainActivity// 在MainActivity中定...原创 2015-08-01 17:14:01 · 31973 阅读 · 6 评论