`
火神曲
  • 浏览: 32087 次
  • 性别: Icon_minigender_1
  • 来自: 广州
最近访客 更多访客>>
社区版块
存档分类
最新评论
文章列表
1、incomplete implementation of class 'ViewController'        前面可能会提示一句拼写错误,这是由于方法名写错了的原因,照着从头文件copy过来就行了      Xcode在这里没有自动提示真是抓狂啊   2、NSObject(NSObject) doesNotRecognizeSelector        调用方法的类没实现这个方法   3、出现unrecognized selector sent to instance 0x44e1e0      新手问题,具体看下面的链接      http://blog.c ...
1、一直提示Android Debug ‘source not found’的问题   估计新手才会遇见的问题,调了一上午……   在manifest.xml中注册的类名,即是android:name要和类名完全一致   这种错误确实很邪恶   2、findViewById,抛出了空指针   打log,Log.e(TAG, "timeSeekBar:" + timeSeekBar),出现了空指针   说明在当前View没找到资源,看看是不是写顺手没在findViewById前面没加上View类   3、图片名是backward,结果找不到资源,运行 ...
1、下载Cygwin,只安装Devel         安装完通过gcc -v和make -v测试         用Ultraedit编辑\Cygwin\home\Adminstrator目录下的.bash_profile文件(不要用txt打开,会导致Cygwin报错),添加   NDK=/cygdrive/e/develop/android/android-NDK/android-ndk-1.5_r1export NDK   重启Cygwin   2、下载android-ndk-r5   3、cd $NDK/samples/hello-jni      $NDK/n ...
这个问题很棘手,打log明明都找了视频缩略图bitmap的路径,但就是显示出来   其实是simpleAdapter自己的问题,它有自己的view绑定规则   可以先看看这个:http://www.cnblogs.com/over140/archive/2010/12/15/1906303.html   在看看这个:http://hi.baidu.com/blue_hmq/blog/item/03baf6ca02cf1614bf09e663.html   其中说道: SimpleAdapter类:一个使静态数据和在XML中定义的Views对应起来的简单adapter。你可 ...
关于这个问题,网上也有很多人问了这个问题,但只有自己碰到了才知道原因   打完log才发现,进入主进程之后,surfaceview的创建优先级并不高,因此在mediaPlayer开始之后,surfaceView还没有创建出来,因此会出现有声音没图像的问题   一般有两种实现方法:   一是在通过holder增加callback,监听surfaceCreate事件,在监听到之后再开始mediaPlayer的相关操作,具体可以看videoView的实现方法   二是通过按钮来实现mediaPlayer,这样也可以保证再用户按到按钮之前,surfaceView已经被创建出来了
详细见 http://hi.baidu.com/jugege/blog/item/c35a5d136a5f89c7f6039e23.html   说得很详细了   注意:   1、当调用create()方法后,MediaPlayer就出了prepared状态了   2、记得每次重新开始时要先调用release()   3、onError()是在setDataSource时发生错误触发的,可以用Listener来监听    
seekBar即可拖动的进度条,可以作为播放器的进度条来使用,使用起来相对简单一点,不过限制较多,需要的话必须重写     和播放器配合的话:   1、设置最大值   int mSecond = mediaPlayer.getDuration();  // 得到的是毫秒 seekBar.setMax(mSecond);   2、自动更新进度条:在Handler里不断给自己发delay消息   currentTime = mediaPlayer.getCurrentPosition(); seekBar.setProgress(currentTime); handler ...
1、打log,按调试,查日志,最常用的方法        点右上角的“+”号,做过滤,主要是ERROR和自己的TAG   2、用Toast,比较直观,适合用在了解程序的流程   3、设断点,按F6单步运行,容易找到一些不易发现的错误,直接知道程序挂在哪一步了
Ctrl + F   搜索本页面   Ctrl + H   搜索工程   alt + Shift + S 快速自动生成构造函数,@Override方法等   想到再补充
  接口有两个,如下:   public interface OnGestureListener {                 // Touch down时触发, e为down时的MotionEvent
Looper负责管理消息队列,Handler负责发送处理消息   Thread创建新线程,Looper.myLooper()获得新线程的Looper,Looper.getMainLooper()是获得主线程的Looper   通过new MyHandler(mainLooper)有参构造函数来让Looper和Handler进行沟通   无参的构造函数,默认获取的是当前线程的Looper   Message message = mHandler.obtainMessage(1, 1, 1, msg); mHandler.sendMessage(message); 发送消息   ...
接上,设置完之后要传回数据且立刻生效,则可以用startActivityForResult(),和startActivity()有所不同(另一种方法可以是检测按键返回,当返回时做一些全局设置的工作)   startActivityForResult(Intent intent, int requestCode) requestCode是用来区分各个是哪个Intent传回数据,是一个大于零的int   setResult(int resultCode, Intent intent) 上一篇的设置是用key来区分各个设置项,但是没key可以设置的条件下,可以用resultCode来区分是 ...
Shared Preferences可以存储一些程序的参数设置,而且不用存储操作,所以用来保存程序的设置参数再合适不过了     设置菜单有专门的xml,首先新建一个PreferenceScreen类别的xml,在src-xml路径下   用PreferenceCategory来分类,android:title来写标题   控件包括CheckBoxPreference、EditTextPreference、ListPreference、RingTonePreference,(太少可以重写)最重要的是android:key这个属性,key在程序里唯一,是存储寻找数据的标记   新建 ...
1、在res/values文件下定义一个attrs.xml文件   <?xml version="1.0" encoding="utf-8"?>       <resources>          <declare-styleable name="MyView">             <attr name="textColor" format="color" />              <attr name=&quo ...
  主要是利用LayoutInflater的inflate方法   相当于findViewById,只不过查找的是layout的资源   LayoutInflater mLayoutInflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE); linearLayout1 = (LinearLayout) mLayoutInflater.inflate(R.layout.main, null); linearLayout2 = (LinearLayout) mLayoutInflater. ...
Global site tag (gtag.js) - Google Analytics