最近的笔记整理
来源:互联网 发布:西安发展 知乎 编辑:程序博客网 时间:2024/06/15 16:06
2、设置复制代码的快捷键是:CTRL+D就行
3、在studio中的代码的上下移动快捷键是:CTRL+shift+↑或者↓;组合按键
4、Error:Execution failed for task ':app:buildInfoDebugLoader'.
> Exception while doing past iteration backup : Source /home/ruiqin/AndroidStudioProjects/DouTuGaoShou/app/build/intermediates/builds/debug/5818437215551/classes.dex and destination
/home/ruiqin/AndroidStudioProjects/DouTuGaoShou/app/build/intermediates/builds/debug/5818437215551/classes.dex must be different
以上在studio中出现的异常问题的原因:是studio在不断更新过程中升级导致的工程编译异常;
解决方案:在选项栏里有点击build→RebuildProject选项重新加载编译工程就OK了;
5、js5.0提供了一组atomic class来帮助我们简化同步处理,属于java多线程开发,提高线程安全性和处理高并发同步(普通的自增模式变量会在被多个对象调取时出现计数失误);
6、屏幕默认单位是像素px,而在代码中所定义的测量单位是dp,所以在自定义view中其计算公式是:px/密度比+0.5f=dp
dp*密度比+0.5f=px
(备注:密度比是Context.getRescouces().getDisplayMatrics().density)
7、关于inflatingexception的填充异常解决方案:一般情况下;都是因为你在xml布局文件中所定义的view节点书写是否正确?
如果正确那么你再看一下是否有自己自定义的控件?
作为某个方法的返回值类型;
作为某些函数方法或者类中的参数类型;
Module ↔ presenter ↔ view
module:准确的说是数据处理加工厂(内部依据的是类似于三级缓存的数据处理策略、所有view层请求和发送的数据都是由module来进行解析和操作的,不需要view自身做处理,只需要view等待module进行数据处理后返回的结果),所以说module不仅仅是实体类的集合,同时也是包含关于数据处理操作、增删改查、获取、分发、解析、存储等行为逻辑;
presenter:主持者,它是一个夹在module和view之间的中间层联系人,有承上启下的作用,类似于对外进行返回数据结果的接口参数传递,view根据需要发出的命令经由presenter交还给module处理,再将module处理后的数据结果返回给需要的view;内部的具体业务逻辑就是封装一些负责刷新view的代码,开启线程处理耗时操作的代码;
1、首先创建一个处理要发布的信息的实用类(类似于set和get的bean类);
2、因为其框架是基于广播类的组件进行的组件间通信的机制,需要在订阅该事件的对象内注册该事件,
3、产生的事件消息和数据需要在相关的对象内发送相关的消息和数据;
4、处理消息;该框架是利用注解的方式进行的处理消息的操作:但是需要注意的就是该被处理的消息需要在哪个线程进行更新和提示--这框架内部封装了这么几个线程模式:PostThread(默认)、MainTread、BackgroundThread、Async。
PostThread--默认线程,哪发消息哪就收(相同线程发与收);
MainThread--主线程,不论哪发消息都在UI执行(可以更新UI,但是不能做耗时操作);
BackgroundThread--后台线程,在主线程就开启子线程执行消息,不在主线程则直接在执行的当前线程运行处理消息(禁止在该线程中进行UI更新);
Async--异步线程,不论在哪个线程发布,该事件处理时均在新建的子线程执行(禁止执行UI更新操作);
11、对于两个fragment之间的跳转问题的解决方案:
(针对在跳转到另一个fragment时按返回键的处理):
<activity
android:name="chengyujia.androidtest.OrientationActivity"
android:screenOrientation="portrait"/>
- 在代码中添加以下代码来实现动态禁止横屏的需求:
只要在onCreate方法中加一句
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
即可始终保持竖屏,如果要横屏,代码是
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
答:这个要根据onItemLongClick的返回值来决定。
如果返回false那么onItemClick仍然会被调用。而且是先调用onItemLongClick,然后调用onItemClick。 (如果为false,会出现一个bug就是在用户长按条目时弹出相应提示的同时就会弹出应用程序打开方式的选择对话框,如果true的话那么就不会出现弹出对话框的情况)
如果返回true那么click就会被吃掉,onItemClick就不会再被调用了。
lv.setOnItemClickListener(new OnItemLongClickListener() {
public boolean onItemClick(AdapterView<?> parent, View view, int position, long id) {
System.out.println("Item LONG clicked. Position:" + position);
return false;
}
});
lv.setOnItemLongClickListener(new OnItemLongClickListener() {
public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
System.out.println("Item LONG clicked. Position:" + position);
return false/true;
}
});
—————————————————————————————————————————
1、刚开始调用了onSaveInstanceState(Bundle savedInstanceState)和onRestoreInstanceState(Bundle savedInstanceState)这个方法来实现,虽然方法比较笨,但是可以通过在onSaveInstanceState中保存一些你需要的变量,在onCreate()方法中判断savedInstanceState是否为null,不为null则调用onRestoreInstanceState()方法取出之前存的变量来使用,这相当于重新加载了一遍当前activity。
- 最近的笔记整理
- 整理一下最近的笔记
- 最近整理的Android学习笔记
- 最近整理的Android学习笔记
- 最近学习mysql,这是整理过后的笔记
- 整理一下最近的Process
- 最近未整理的URL
- 整理一下最近的研究
- 整理最近学习的算法
- 最近整理的相关技术
- 最近的想法整理下
- 最近需要整理的内容
- 整理下最近LINUX学习笔记
- 最近的一些笔记
- 最近的git笔记
- driver最近做的小笔记,有点乱,后面来整理
- 整理一下最近的RIA行业新闻吧
- 最近破解的DotNet控件整理
- 神经网络与深度学习(三)- Shallow Neural Network
- PAT(Advanced Level) A+B Format
- Delphi 7启动后提示Unable to rename '...\Delphi7\Bin\delphi32.$$$' to '...\Delphi7\Bin\delphi32.dro'的解决办法
- OpenStack 设计与实现系统学习资料
- ffmpeg视频格式转换
- 最近的笔记整理
- HTTP中Cookie,Session的理解
- Oracle之定时任务1
- python快速找到多个字典中的公共键
- C#--LINQ查询技术研究与应用
- iOS--GCD的常见用法,group、barrier、semaphore
- 数组
- Oracle自动生成数据字典的SQL语句
- 现代数学大厦究竟有多高?