https://www.myziyuan.com/
- hwlsz
- 对于读项目源代码来说,可能对大多数人是件困难的事。首先,第一个障碍:看到项目,就已经放弃! 如果有十个人,可能有5个人以上会是上面这种情况,分析其想法:这么多的代码,我要怎么读啊!我要读好久啊!算了,还是看小Demo吧,所以这样,他们也就只是把这个项目导入到eclipse中,点了几下鼠标,然后就没有下文了。 解决办法:其实他们终止的原因很简单,就是嫌麻烦,那好吧,告诉你,这点麻烦都能对你造成影响,其实你的开发之路也可以终止了。任何东西,你要学到它,你就必须花时间、花精力、还要有面对困难的准备。想一步登天,有可能,除非你是天才,但毕竟天才太少了!对于开发,不是学习1+1,所以,先摆正心态吧,那要具备怎样的心态呢?那就是:有面对困难的准备,也有解决苦难的信心。 心态问题解决了,那就是读代码的技巧了,很多人拿到一个项目不知道怎么入手,干脆就胡乱的一通看,看到一定时候发现,实在进行不下去了,又开始重新梳理自己的思路。这样是很浪费时间的,其实对于读一个项目,最好按照以下步骤进行(个人意见,仅供参考): 1、使用这个应用或者游戏,直到熟悉它的使用流程和功能 2、根据自己的体验分析代码实现(整体) 3、如果有条件和原作者请教项目思路 4、从最先启动的Activity开始,弄懂每个Activity功能如何实现以及它的布局实现 5、遇到不懂的代码,首先找搜索引擎(一般都能解决)。还不行就可以请教他人了 6、对新学到的知识点,一定要总结下来,并且定期的去回顾7、最重要的一点:我认为要自己动手写,那怕是重新写一遍这个项目,或者自己设计一个类似的,再或者只写这个项目中的一部分。 为什么要自己动手呢?大家都知道coder这个东西,那怕你理论学得再好,不动手,那也是毫无意义的!所以,动手写一下,你会遇到问题,你就会解决问题,这样,你才能学到更多。这就是经验·······
- 2021-02-20 12:55:01
- dsadasd
- 首先介绍 iosched这个项目,google/iosched · GitHub 。 iosched项目是Google I/O的官方app,不仅仅是一个学习的demo,这是一个真正开源的线上项目。 第二个推荐的就是topeka项目 googlesamples/android-topeka · GitHub 。 这个项目是Google前几天刚发出来,用来展示如何将MaterialDesign应用到你的app中,以达到最佳设计和交互效果。通过这个app,你还可以学到如何设计你app的交互和视觉以更好的和MaterialDesign搭配。
- 2021-02-11 18:37:36

- 免注册用户
- 初学Android开发!求一个完整的详细的Android小程序源码参考!,媒体播放器源码Audio.javapackage org.example.audio;import android.app.Activity;import android.media.MediaPlayer;import android.os.Bundle;import android.view.KeyEvent;public class Audio extends Activity { private MediaPlayer up, down, left, right, enter; private MediaPlayer a, s, d, f;@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main);// Native rate is 44.1kHz 16 bit stereo, but // to save space we just use MPEG-3 22kHz mono up = MediaPlayer.create(this, R.raw.up); down = MediaPlayer.create(this, R.raw.down); left = MediaPlayer.create(this, R.raw.left); right = MediaPlayer.create(this, R.raw.right); enter = MediaPlayer.create(this, R.raw.enter); a = MediaPlayer.create(this, R.raw.a); s = MediaPlayer.create(this, R.raw.s); d = MediaPlayer.create(this, R.raw.d); f = MediaPlayer.create(this, R.raw.f); }@Override public boolean onKeyDown(int keyCode, KeyEvent event) { MediaPlayer mp; switch (keyCode) { case KeyEvent.KEYCODE_DPAD_UP: mp = up; break; case KeyEvent.KEYCODE_DPAD_DOWN: mp = down; break; case KeyEvent.KEYCODE_DPAD_LEFT: mp = left; break; case KeyEvent.KEYCODE_DPAD_RIGHT: mp = right; break; case KeyEvent.KEYCODE_DPAD_CENTER: case KeyEvent.KEYCODE_ENTER: mp = enter; break; case KeyEvent.KEYCODE_A: mp = a; break; case KeyEvent.KEYCODE_S: mp = s; break; case KeyEvent.KEYCODE_D: mp = d; break; case KeyEvent.KEYCODE_F: mp = f; break; default: return super.onKeyDown(keyCode, event); } mp.seekTo(0); mp.start(); return true; }}
- 2021-02-11 18:37:36