每段时间Android开发10个知道(初级系列)-170613

来源:互联网 发布:今晚非农数据预测 编辑:程序博客网 时间:2024/06/05 17:56

每段时间Android开发10个知道(初级系列)-170613

1.Android绘图技巧

2.Android图像处理之色彩特效如何处理?

3.Android图像处理之图形特效如何处理?

4.Android图像处理画笔如何使用?

这4个问题或许学的很枯燥乏味,推荐还是用到的时候进行实践学习,这4个题目全出自于《Android群英传》章节 6.4,6.5,6.6,6.7,学会了这写可以干嘛 !学会Android绘图技巧这我说你应该知道用处,不过笔者认为最大的好处就是可以提高薪水,这很现实。问题2~4学会了,因为是图像处理,很自然让你联想到各种P图软件,美图秀秀,美拍啊等等,所以我也就不多说了。

下面这个是《Android群英传》第六章的所有内容:
http://blog.csdn.net/qq_26787115/article/details/50967896?locationNum=2&fps=1

5.二维码这个你肯定很熟悉,但是原理你就未必知道了?

二维码在笔者刚刚接触的时候,感觉是个很神奇的东西,就是一张图,但是却可以办到很多不可思议的事,在细细看了牛逼的博主分析了一下原理后,似乎搞懂了些!

http://blog.csdn.net/u012611878/article/details/53167009?locationNum=3&fps=1

6.在主界面短暂的时间间隔内连续点击后退键两次返回桌面,但应用还在后台运行,这么简单的功能,你会不会实现?

由于写代码,分析代码是脑壳活,也是体力活,因为不仅要思考并敲代码,搞出来了,又要把思路写到博客上,实在很累,所以,笔者就不会详细说明思路了,只贴出几个问题,然后贴段代码,会读代码也是一种强悍的能力,这是转接工作必须经历的,相信有此经历的小伙伴一定很理解:

1.后退键的监听
2.返回桌面代码的实现
3.如何解决时间间隔内,监听到用户点击后退键点了2次

代码实现:

import android.content.Intent;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.KeyEvent;import android.widget.Toast;public class MainActivity extends AppCompatActivity {private long oneTime = 0,twoTime = 0;//记录用户两次点击的时间private int times = 0;//记录用户第几次点击private int TIME = 2000;//设置时间间隔为2000毫秒,也就是2秒@Overrideprotected void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.activity_main);}@Overridepublic boolean onKeyDown(int keyCode, KeyEvent event) {    if(keyCode == KeyEvent.KEYCODE_BACK){        //当用户第1次点击了,记录当前时间        times++;        if(times == 1)        {            oneTime = System.currentTimeMillis();//记录用户第一次点击时的当前时间            Toast.makeText(MainActivity.this,"再点击一次返回桌面",Toast.LENGTH_SHORT).show();        }else if(times == 2) {            twoTime = System.currentTimeMillis();            //判断时间间隔             if((twoTime - oneTime)<=TIME ){                 //返回至桌面,并且将记录用户点击的次数,两次点击的时间重置                 Intent home = new Intent(Intent.ACTION_MAIN);                 home.addCategory(Intent.CATEGORY_HOME);                 startActivity(home);                 toZero();             }else {                 //用户没有在规定的时间间隔内,连续点击2次,那么把录用户点击的次数,两次点击的时间重置,                 // 并且将此刻记录为第一次点击,并记录时间                 toZero();                 times++;                 oneTime = System.currentTimeMillis();                 Toast.makeText(MainActivity.this,"再点击一次返回桌面",Toast.LENGTH_SHORT).show();             }        }    }    return true;}private void toZero(){    oneTime = 0;    twoTime = 0;    times   = 0;}}

实现的方式有很多,这里我使用了最简单的方式实现!还有其他高大上的方式,需要你们自己去网上查找学习,这里我就不贴地址了。

7.对于”学习”,学和玩结合才是进度最快的方式

学是为了更会玩儿,这是笔者高中物理老师说的一句话,至今记到现在。
学 %60
玩 %40
(笔者自己的时间规划)
掌握好二者的平衡,学得好,玩得又好。

我是一个很喜欢玩的人,最爱玩的就是PC单机游戏,网络游戏倒是倒是很少,在大学曾一度为了玩一个很老的游戏《三国群英传7》而逃过不少课,细思极爽,天天玩的超嗨,但是你别人为笔者只是单纯的玩哦!更重要的是在玩的过程中思考,怎么做出来的啊!不错,就是带着这个问题去玩,才会又玩又学!你可能最后还是学不了啥东西,但是带着“怎么做出啦的啊?”这个问题去玩,或许才能让你的认知得到的快些!这不是笔者自己想到的,而是一个叫“亚伦斯沃茨”的人,“互联网之子”这或许很多都听说过,他曾表达过想法:如何有效利用时间?而笔者是是学他的,想知道他是谁?你知道,我就不用多做介绍,不知道,去找度娘,带着某种目的去玩或许能更好的利用时间。

以上只是笔者自己的想法,不喜欢就直接跳过,没任何影响。

8.想做聊天功能的App,Java Socket编程你掌握了吗?

http://blog.csdn.net/zylzb/article/details/40511059?locationNum=1&fps=1

看文字学习似乎看的非常累,笔者还是建议看视频把:
链接:http://pan.baidu.com/s/1bps39kr 密码:pf0n

9.你使用Java编程时,必须要main()方法才能运行,有没有反思过,为什么要这样子呢?

这个问题其实很简单,到你点击运行程序的时候,JVM虚拟机首先要找到你运行的那个主类的main()方法,这是牛逼的开发JVM虚拟机大神已经写好的,没什么为什么,这是大神规定的,那我反问你一句?为什么Android支持Java,但是却不存在main()方法呢?这是为什么?Android里面的虚拟机是什么?答案我不说,你也应该分析出来了把!

10.Java程序初始化的顺序?

换个问题就是下面这段代码会依次输出什么?结果我就不贴出来了,自己运行起来试试:

public class Test {    static String a = "声明初始化";    static{        System.out.println(a);              a = "静态代码块块初始化";    }    {        System.out.println(a);              a = "初始化块初始化";    }    public Test(){        System.out.println(a);              a = "构造器初始化";    }    public static void main(String[] args) {        Test test = new Test();        System.out.println(a);          }}

注意:静态代码块只能调用静态属性的方法和静态的成员变量,因为它没持有当前类的this关键字

笔者写文章必须借助其他博主的牛逼文章来作参照,这里谢谢那些博主对知识无私的奉献。

阅读全文
0 0