- 博客(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 3875
原创 一条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 1683
原创 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 243
原创 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 3522
原创 更新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 2710
原创 Flutter-问题:Wrap a column with an Expand in a SingleChildScrollView
首先来看下面例子,项目中需要实现如图功能,解析一下需求:【确定】按钮需要放在页面底部页面需要包裹在SingleChildScrollView中,当键盘出现时,系统才会滚动布局避免TextField被遮挡登录按钮不会被顶到键盘上方(下面几种方案都没实现这需求,有知道解决方案的大大回复下
2019-08-01 15:57:02 1529 3
原创 Android多渠道包实现不同功能
需求:华为渠道使用华为支付,其他渠道使用支付宝、微信这样就要求在支付页面,选择支付方式时,华为渠道显示的是华为支付,而其他页面显示的是支付宝和微信实现:1. 使用productFlavors,共用大部分代码,而支付页面做功能上的区分在src目录下新建两个文件夹huawei和normal,跟main文件夹在同一级。在huawei和normal里可以建java和res目录,里面就可以放同名的...
2018-10-24 12:01:37 5149 2
原创 Android 三种状态的Checkbox
CheckBox原本只有两种状态,选中和不选中,使用系统默认的state_checked就可以满足。但是多了一种状态,就得自定义state了1. 在attrs.xml文件中添加state&lt;declare-styleable name="GpState"&gt; &lt;attr name="gp_state_middle" format="boo
2018-07-03 17:24:44 5886
原创 红黑树
说明:本文是在学习红黑树并看了N篇文章后的梳理,并非原创,感谢下面几篇文章:红黑树(一)之 原理和算法详细介绍红黑树详细分析,看了都说好红黑树红黑树实例漫画:什么是红黑树0. 为啥要有红黑树可以先看看这篇文章:漫画:什么是红黑树 二叉查找树的理想高度是logN,最坏情况可能是所有节点都在一条斜线上,树的高度就变成为N,直接影响了树的查找效率。为了解决上面问题,产生了一...
2018-06-15 18:51:05 453 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 2957
原创 Android-Service学习总结
1.startService()startService(intent) //启动servicestopService(intent) //结束service主要是用来启动服务,后续Activity和Service不需要通信如果第一次启动,onCreate()会调用,再次点击,只会调用onStartCommand()。就是说Service和Activity是独立的,如果我在页面A调用st
2017-11-06 17:56:13 487
原创 下载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 3187 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 1089
原创 点击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 684
原创 从mysql导数据到sqlite,遇到单引号问题
从mysql导数据到sqlite,如果表中的一个字段是的数据是I’m here.则在mysql的数据库中会自动转成I\\\’m here.而这种方式在sqlite中是不认的,sqlite中的如果有单引号,要改成I’’m here,即两个单引号
2015-07-15 11:16:07 615
原创 ViewPager延迟加载
一.ViewPager的pager中是ListView今天遇到一个问题,就是如果ViewPager里的内容是从网上获取的,一下子把几个Pager页的内容都获取下来有点不太现实,而且用户不一定会翻到后面的pager页去看,所以需要每次只加载当前页。我现在的做法是一开始传入的数据是空的,注意是空的,不是空值,这样pager里的ListView就没有东西显示。然后在onPageChangeL
2014-12-24 14:24:11 1578
原创 Android获取屏幕状态
这几天都在头疼锁屏的问题,因为我要获取屏幕是否锁屏,并在onPause()里进行判断,可是广播发的太慢了,是在onPause()之后才发,而且不同手机发的时间还不同。
2014-09-22 15:35:02 909
原创 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 1323
原创 将一个表中的总人数,男生人数,女生人数同时输出
例如:新建一个系部表department(系部名称,总人数,男生人数,女生人数),用T-sql语句从学生表中采集相应信息添加到系部表中介绍两种方法1.用到了select into,要注意的是select into要求此前并没有department表完成这题的方法可以为 select 所在系 as 系部名称,count(*) as 总人数, sum(case 性别
2013-05-09 22:53:45 5844 3
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人