自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 资源 (1)
  • 收藏
  • 关注

原创 使用Theme的正确方式

前面一部分主要是摘录自Flywith24 的 Android Styling系列文章(主要为了整理和理解方便????),强烈建议大家看大佬的原文一、Theme 和 Style的区别Style是什么?Style是view的属性的集合 ,你可以将style视为Map<view attribute,resource>。这里的key是view的所有属性,都是可以在layout文件中配置的一个style只能作用于其应用的view,不包含它的子view。使用时用style标签Theme是什么?

2020-12-30 20:12:53 3855

原创 一条sql的部分结果集如何按照另外一张表排序

表结构说明:1. word 表:记录单词学习次数word_id:单词IDtimes: 学习次数2. word_book 表:记录单词在单词书中顺序需求:查询学习次数超过3次的单词,并按学习次数递增排序,如果单词是在book_id=1的书中,需要按sort排序word 表测试数据:word_book 表测试数据:解决方案:使用如下sql:select * from word LEFT JOIN word_book on word.word_id=word_book.word

2020-10-22 20:05:28 1655

原创 Jetpack系列:Lifecycle

几个类之间的关系1. Lifecycle存储Activity和Fragment的生命周期的信息。Lifecycle使用Event和State来记录当前的生命周期。State指的是当前生命周期所处的状态,Events对应着Activity和Fragment中的生命周期方法。2. LifecycleOwnerLifecycleOwner是Lifecycle的持有者,可以通过LifecycleOwner获取Lifecycle。系统一些实现了LifecycleOwner的类:3. LifecycleO

2020-08-17 19:40:22 218

原创 git 大文件删除及管理

项目里把数据库和mapping.txt等文件都push到仓库里了,导致仓库变的很大,都800多M了,gitee提示如果超1G就限制push次数了。仓库瘦身一般有两种方式,一种是使用git官方的git filter-branch命令,一种是使用三方库BFG,使用BFG简单一点,而且会快很多,这里说下步骤主要是参考 使用BFG清除git仓库中的隐私文件或大文件1. 下载jar包到官网下载:官网,为了方便,将bfg-1.13.0.jar重命名为bfg.jar2. clone自己的项目,使用–mirror

2020-07-17 11:48:07 3487

原创 更新fork仓库的代码

更新fork仓库的代码比如从alibaba/flutter_boost fork了项目到uquabc/flutter_boost1. 更新已有分支比如两个仓库都有master分支,现在想把这个分支代码更新到最新,可以参考github上fork了别人的项目后,再同步更新别人的提交2. 更新uquabc/flutter_boost上不存在的分支比如alibaba/flutter_boost上新出的v1.12.13-hotfixes分支,在uquabc/flutter_boost上并不存在,就没法用第一

2020-06-15 15:15:40 2697

原创 Flutter-问题:Wrap a column with an Expand in a SingleChildScrollView

首先来看下面例子,项目中需要实现如图功能,解析一下需求:【确定】按钮需要放在页面底部页面需要包裹在SingleChildScrollView中,当键盘出现时,系统才会滚动布局避免TextField被遮挡登录按钮不会被顶到键盘上方(下面几种方案都没实现这需求,有知道解决方案的大大回复下

2019-08-01 15:57:02 1510 3

原创 Android多渠道包实现不同功能

需求:华为渠道使用华为支付,其他渠道使用支付宝、微信这样就要求在支付页面,选择支付方式时,华为渠道显示的是华为支付,而其他页面显示的是支付宝和微信实现:1. 使用productFlavors,共用大部分代码,而支付页面做功能上的区分在src目录下新建两个文件夹huawei和normal,跟main文件夹在同一级。在huawei和normal里可以建java和res目录,里面就可以放同名的...

2018-10-24 12:01:37 5129 2

原创 Android 三种状态的Checkbox

CheckBox原本只有两种状态,选中和不选中,使用系统默认的state_checked就可以满足。但是多了一种状态,就得自定义state了1. 在attrs.xml文件中添加state&amp;lt;declare-styleable name=&quot;GpState&quot;&amp;gt; &amp;lt;attr name=&quot;gp_state_middle&quot; format=&quot;boo

2018-07-03 17:24:44 5838

原创 红黑树

说明:本文是在学习红黑树并看了N篇文章后的梳理,并非原创,感谢下面几篇文章:红黑树(一)之 原理和算法详细介绍红黑树详细分析,看了都说好红黑树红黑树实例漫画:什么是红黑树0. 为啥要有红黑树可以先看看这篇文章:漫画:什么是红黑树 二叉查找树的理想高度是logN,最坏情况可能是所有节点都在一条斜线上,树的高度就变成为N,直接影响了树的查找效率。为了解决上面问题,产生了一...

2018-06-15 18:51:05 444 1

原创 mac安装sqlite3_analyzer

安装过程到sqlite官网下载sqlite3_analyzer,并设置别名sqlite3_analyzer按照使用方法运行sqlite3_analyzer test.s3db报错如下: 看了下电脑里的tcl是v8.5的,而sqlite3_analyzer需要的是v8.4的,我又不想下个老版本的,所以需要修改sqlite3_analyzer的查找路径,使用install_...

2018-03-29 14:24:39 2944

原创 Serializable和Parcelable总结

Serializable和Parcelable区别

2017-11-07 11:33:54 187

原创 Android-Service学习总结

1.startService()startService(intent) //启动servicestopService(intent) //结束service主要是用来启动服务,后续Activity和Service不需要通信如果第一次启动,onCreate()会调用,再次点击,只会调用onStartCommand()。就是说Service和Activity是独立的,如果我在页面A调用st

2017-11-06 17:56:13 471

原创 下载Android源码及导入到Android Studio

下载:参见https://mirrors.tuna.tsinghua.edu.cn/help/AOSP/我是使用每月更新的初始化包编译参见https://source.android.com/source/building.html(1)使用的是mac,所以需要将电脑弄个区分大小写的磁盘空间,建议100G 一开始磁盘弄小了,想改大,运行如下命令:hdiutil resize -size 100g

2016-12-08 18:28:21 3177 2

原创 Mac上安装NDK

Mac上安装NDK1.进入.bash_profile,该文件在/User/用户名下,路径改成自己的NDK的真实路径NDK_HOME='/Applications/adt/ndk/android-ndk-r10e'export PATH=$PATH:$NDK_HOMEA_NDK_ROOT='/Applications/adt/ndk/android-ndk-r10e'export A_NDK_RO

2015-12-23 12:54:41 1075

原创 点击EditText外部,保存EditText内容

可以在activity中复写dispatchTouchEvent方法@Override public boolean dispatchTouchEvent(MotionEvent event) { if (event.getAction() == MotionEvent.ACTION_DOWN) { View v = getCurrent...

2015-08-21 09:15:25 672

原创 从mysql导数据到sqlite,遇到单引号问题

从mysql导数据到sqlite,如果表中的一个字段是的数据是I’m here.则在mysql的数据库中会自动转成I\\\’m here.而这种方式在sqlite中是不认的,sqlite中的如果有单引号,要改成I’’m here,即两个单引号

2015-07-15 11:16:07 605

原创 ViewPager延迟加载

一.ViewPager的pager中是ListView今天遇到一个问题,就是如果ViewPager里的内容是从网上获取的,一下子把几个Pager页的内容都获取下来有点不太现实,而且用户不一定会翻到后面的pager页去看,所以需要每次只加载当前页。我现在的做法是一开始传入的数据是空的,注意是空的,不是空值,这样pager里的ListView就没有东西显示。然后在onPageChangeL

2014-12-24 14:24:11 1561

原创 Android自定义日历

菜鸟一枚,所以日历的自定义也让我头疼了好几天,主要原因是

2014-11-08 16:32:47 1460 1

原创 Android获取屏幕状态

这几天都在头疼锁屏的问题,因为我要获取屏幕是否锁屏,并在onPause()里进行判断,可是广播发的太慢了,是在onPause()之后才发,而且不同手机发的时间还不同。

2014-09-22 15:35:02 899

原创 android 播放器遇到prepareAsync called in state 8

package com.example.mediaplayer_1219;import java.io.IOException;import android.media.MediaPlayer;import android.os.Bundle;import android.app.Activity;import android.view.Menu;import an

2013-06-06 20:10:35 1313

原创 将一个表中的总人数,男生人数,女生人数同时输出

例如:新建一个系部表department(系部名称,总人数,男生人数,女生人数),用T-sql语句从学生表中采集相应信息添加到系部表中介绍两种方法1.用到了select into,要注意的是select into要求此前并没有department表完成这题的方法可以为    select 所在系 as 系部名称,count(*) as 总人数,    sum(case 性别

2013-05-09 22:53:45 5804 3

Android自定义日历

Android自定义日历,仿小米日历界面

2014-11-08

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除