在使用fragment的时候经常会遇到getActivity()为null的情况.比如我在一个异步网路请求的回调中调用了getActivity()就会出现空指针问题.之前解决这个问题,通常都是直接加空指针判断来规避,但是这并没有真正解决问题. 很多人都曾被这个问题所困扰,如果app长时间在后台运行,再次进入app的时候可能会出现crash,而且fragment会有重叠现象.如果系统内存不足.切换横竖屏.app长时间在后台运行,Activity都可能会被系统回收然后重建,但Fragment并…
在日常开发中的时候,我们经常会使用ViewPager+Fragment进行视图滑动,在某些部分逻辑也许我们需要利用上下文Context(例如基本的Toast),但是由于Fragment只是衣服在Activity容器的一个试图,如果需要拿到当前的Activity的上下文Context就必须通过getActivity()获取. 然而,不知道各位程序猿有没有遇过出现getActivity()出现null的时候导致程序报出空指针异常.其实原因可以归结于因为我们在(一)切换fragment的时候,会频繁被…
在Android开发中,如果我们用到V4包里面的Fragment,在应用被切换到后台的时候,Activity可能被回收,但是创建的所有Fragment则会被保存到Bundle里面,下面是FragmentActivity的部分源码 /** * Save all appropriate fragment state. */ @Override protected void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState…
overide FragmentActivity  onSaveInstanceState method like this. @Override public void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); if(outState != null) { String FRAGMENTS_TAG = "android:support:fragments"; // remov…
MainActivity代码 @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); // Associate searchable configuration with the SearchView…
在与服务端通过JSON格式进行交互过程中,不同版本的JSON库在对于key-value为null情况上的处理不同. Android自带的org.json对key-value都要求不能为null,对于必传的字段需要留意一下,尤其是留意value是否可能出现null的情形.否则导致服务端解析出现问题. 此坑已被踩中,留下小记.下面直接看一下相应位置源码: public class JSONObject { ...... /** * Maps {@code name} to {@code value}…
今天都到一段代码,在onDestroy()方法中,使用了下面的代码: mHandler.removeCallbacksAndMessages(null); 一开始我完全看不懂,我为什么参数是null,如果是null还需要移除什么Callbacks和Messages.后来察看官方文档有以下说明: 地址:http://developer.android.com/reference/android/os/Handler.html#removeCallbacksAndMessages%28java.la…
错误描述 java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.TextView.setText(java.lang.CharSequence)' on a null object reference 问题分析 照成错误的原因是那个 TextView ,并不是传进去的那个值的问题.确保你在 setText() 的时候,已经初使化了你的 TextView…
由于之前本机已安装过Android SDK,在安装Visual Studio 2015时跳过了,并没有为Xamarin指定对应路径导致.Visual Studio顶部菜单:Tools > Options > Xamarin > Android Settings指定一下Android SDK目录即可. android SDK 下载地址: http://www.android-studio.org/ 选择需要的SDK版本进行安装…
网上有很多说是因为没有采用HttpClient造成的,尼玛,我改成了HttpClient 请求图片之后还是会出现SkImageDecoder::Factory returned null, 但是直接使用 bitmap = BitmapFactory.decodeStream(is);  是正常的,但解决不了图片大内存溢出的问题 解决办法: 重新获取一次流,注意看代码(红色部分): /** * 根据网络url获取bitmap对象 * @param url * @param width 要获取的宽度…