平方X

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
12
返回列表 发新帖
楼主: 平方X

[Android] Android studio 笔记

[复制链接]

414

主题

709

帖子

3605

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
3605
QQ
 楼主| 发表于 2016-5-13 11:07:01 | 显示全部楼层
Android studio
Data Binding
在gradle中,android下配置
①dataBinding{
        enabled=true;
    }
②布局中
用<layout> <data>分别处理
③在javabean中,用
    @Bindable和notifyPropertyChanged
The Bindable annotation generates an entry in the BR class file during compilation. The BR class file will be generated in the module package. If the base class for data classes cannot be changed, the Observable interface may be implemented using the convenient PropertyChangeRegistry to store and notify listeners efficiently.
④也可以用
A little work is involved in creating Observable classes, so developers who want to save time or have few properties may use ObservableField and its siblings ObservableBoolean, ObservableByte, ObservableChar, ObservableShort, ObservableInt, ObservableLong, ObservableFloat, ObservableDouble, and ObservableParcelable. ObservableFields are self-contained observable objects that have a single field. The primitive versions avoid boxing and unboxing during access operations. To use, create a public final field in the data class:
⑤点击事件
一开始设置handler之后,并没有作用。
后来发现,是没有用binding的set方法给它设置handler
我是平方X~
回复 支持 反对

使用道具 举报

414

主题

709

帖子

3605

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
3605
QQ
 楼主| 发表于 2016-5-13 15:01:05 | 显示全部楼层
【Android Studio】【activity跳转至关联xml文件】【xml文件跳转至Activity】
来自:http://www.jianshu.com/p/8ca15b831b31
在类和布局文件开头顶部有小图标,可以点击。
快捷键是Related Symbol...
我是平方X~
回复 支持 反对

使用道具 举报

414

主题

709

帖子

3605

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
3605
QQ
 楼主| 发表于 2016-5-13 15:02:13 | 显示全部楼层
【Android Studio】【快捷键搜索】
Eclipse是可以直接输入快捷键的。
Android studio,点那个带按键的搜索键,然后按键就可以了。
我是平方X~
回复 支持 反对

使用道具 举报

414

主题

709

帖子

3605

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
3605
QQ
 楼主| 发表于 2016-5-16 17:12:53 | 显示全部楼层
【Android Studio】
【Can't resolve resources】
在布局中通过@dimen/引用尺寸,但无法预览,最后发现是不能用lib中的资源,把dimen定义复制一份到当前包中就可以了。
我是平方X~
回复 支持 反对

使用道具 举报

414

主题

709

帖子

3605

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
3605
QQ
 楼主| 发表于 2016-5-17 12:32:51 | 显示全部楼层
【android studio】
【自定义控件】
自定义控件在引用的module中,预览时总是出错。一会不刷新,不会资源没有。
折腾了很入,一直clear project,rebuild project
最后make projcet成功了,原因不知道,我还不熟悉。
我是平方X~
回复 支持 反对

使用道具 举报

414

主题

709

帖子

3605

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
3605
QQ
 楼主| 发表于 2016-5-17 12:48:32 | 显示全部楼层
【android studio】
【extract android string】【导出文本】
来自http://www.tuicool.com/articles/f22qua
alt+enter
我是平方X~
回复 支持 反对

使用道具 举报

414

主题

709

帖子

3605

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
3605
QQ
 楼主| 发表于 2016-5-17 13:37:15 | 显示全部楼层
【android】
【自定义属性】【declare-styleable name】
【安卓自定议属性 提示输入 自动补全】
有一次,我导入https://github.com/castorflex/SmoothProgressBar
这个时,发现自定义属性会提示,碉堡了有没有。
可是为什么会提示呢?我的自定义属性怎么不会?
cpb它有cpb_attrs.xml,cpb_default_styles.xml,cpb_styles.xml
我看了一遍没有什么特别的,而且,如果我增加一个属性,它也会提示。
研究了半天,搜索了半天,还是没有提示。
最后,在declare-styleable name处,它的名字CircularProgressBar,我鼠标移过去,突然闪了一下类的介绍,我恍然大悟,原来这个名字是对应类名的啊。
我马上试了一下,把attr中的declare-styleable的name和自定义view的类名对应,就会自动提示了。
很开心,圆满解决。
总结一下,之所以之前不知道,是因为自己学习的时候,搜的是安卓自定义控件,都是国内各种转的,肯定是遗漏了什么东西,于是我想搜一搜谷歌原文,结果……百度并不能找到,唉。
于是用谷歌,搜索declare-styleable就有了,定位到https://developer.android.com/tr ... -view.html?hl=zh-cn
看了一下,有
This code declares two custom attributes, showText and labelPosition, that belong to a styleable entity named PieChart. The name of the styleable entity is, by convention, the same name as the name of the class that defines the custom view. Although it's not strictly necessary to follow this convention, many popular code editors depend on this naming convention to provide statement completion.
可以看到,人家说了,按照惯例,styleable 的名字要和自定义view的类名一样。尽管这个惯例不是严格要求的,但大多数主流的代码编辑器会根据这个命名规则来提供声明补全(代码提示)。
还有一点,要在view内申明命名空间,在最外层也不会提示。
我是平方X~
回复 支持 反对

使用道具 举报

414

主题

709

帖子

3605

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
3605
QQ
 楼主| 发表于 2016-5-21 10:44:51 | 显示全部楼层
【Android studio】
【andriod no changes to deploy】
http://blog.csdn.net/loveanao/article/details/51292247
Settings -> Build, Execution, Deployement -> Instant Run" and just disable it.
我是平方X~
回复 支持 反对

使用道具 举报

414

主题

709

帖子

3605

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
3605
QQ
 楼主| 发表于 2016-5-21 11:04:11 | 显示全部楼层
【Android Studio】
【logcat 时间不对】
模拟器显示11点,log显示23点,后来发现模拟器的11点是下午的,改时间就好了。
我是平方X~
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|Archiver|平方X ( 冀ICP备14018164号 )

GMT+8, 2024-5-8 05:15 , Processed in 0.106995 second(s), 18 queries .

技术支持:Powered by Discuz!X3.4  © 2001-2013 Comsenz Inc.

版权所有:Copyright © 2014-2018 平方X www.pingfangx.com All rights reserved.

快速回复 返回顶部 返回列表