Android Cookie

Android 安卓是最开放的手机操作系统,谷歌安卓APP开发和安卓市场的相关话题

从ListView中隐藏行而不占用空间

我有一个ListView和一个关联的ArrayAdapter,在几个活动中显示它的内容。 不幸的是现在有必要,我的ListView在其中一个设置不显示所有的元素,但只是其中“属性”没有设置为true的。 我想避免使用两个具有不同内容的ArrayAdapter,因为那样我就需要保持它们的同步。 我尝试了这样(这个方法现在只是假设在我们想隐藏某些元素的设置中调用getView): public View getView(int position, View convertView, Context context) { …. if(!arrayitems[position].isProperty()) { //arrayitems is the underlying array convertView.setVisibility(View.VISIBLE); } else { convertView.setVisibility(View.GONE); } return convertView; } 这工作,但是我得到一个白色的行,如果元素有isProperty == true。 我想让行在这个意义上是不可见的,它不再占用任何空间。 那可能吗? 用于convertView的xml文件如下所示: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingTop="5dp" android:paddingBottom="5dp" android:orientation="vertical"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" > <TextView android:id="@+id/text_item_time" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginRight="4dp" android:maxLines="1" android:ellipsize="none" […]

后台进程在Samsung S3上运行应用程序时随机死亡

我写了一个Android应用程序,在除了三星S3之外的每一个手机上都没有问题。 发生什么事情是,当我的应用程序正在运行时,其他后台进程(即其他应用程序)将开始死亡。 例如,经过一段时间的使用我的应用程序,dynamic壁纸将死亡,用户将退出我的应用程序后,他的手机上黑色的背景。 最后,经过一段时间的使用,我的应用程序也被OS所杀。 令人沮丧的是,在日志中我看不到任何错误信息,这会给我一个提示,究竟是什么问题。 这只发生在三星S3上(而不是在S2上)。 我认为这是内存相关,因为我的应用程序是非常内存密集型(它正在从网上加载大量的图像),但我看不到日志中的任何“无内存”错误。 我也怀疑,我使用的HTTP框架可能是越野车,所以我从Apache HttpComponents切换到java.net.HttpURLConnection,但它没有帮助。 任何想法,为什么发生这种情况或提示如何debugging,将不胜感激。 这里是从日志的摘录,显示一些后台进程死亡(例如,dynamic壁纸): 01-07 01:57:37.245: I/InputDispatcher(2296): Delivering touch to current input target: action: 0x1 01-07 01:57:37.505: D/dalvikvm(29490): GC_FOR_ALLOC freed 1535K, 17% free 28032K/33735K, paused 71ms, total 71ms 01-07 01:57:37.580: D/dalvikvm(6718): WAIT_FOR_CONCURRENT_GC blocked 0ms 01-07 01:57:37.620: D/dalvikvm(6718): GC_EXPLICIT freed 91K, 9% free 17663K/19399K, paused 3ms+5ms, total 40ms 01-07 […]

什么格式的Android相机与原始pictureCallback?

我正在尝试使用来自Android图片的数据。 我不喜欢JPEG格式,因为最终我会使用灰度数据。 YUV格式对我来说很好,因为上半部分是灰度的。 从Android开发教程中, public final void takePicture(Camera.ShutterCallback shutter,Camera.PictureCallback raw,Camera.PictureCallback postview,Camera.PictureCallback jpeg) 在API级别5中添加 触发asynchronous图像捕获。 随着图像捕捉的进行,相机服务将启动一系列callback应用程序。 拍摄图像后会发生快门callback。 这可以用来触发声音,让用户知道图像已被捕获。 原始callback在原始图像数据可用时发生(注意:如果没有可用的原始图像callback缓冲区或原始图像callback缓冲区不足以容纳原始图像,数据将为空)。 当缩放的,完全处理的postview图像可用时,发生postviewcallback(注意:并非所有的硬件都支持这个)。 当压缩图像可用时,发生jpegcallback。 如果应用程序不需要特定的callback,则可以传递null而不是callback方法。 它谈到“原始图像数据”。 但是,我找不到有关原始图像数据格式的信息? 你有什么想法吗? 我想获取照片拍摄的图片的灰度数据,数据位于手机内存中,因此不需要花费时间从图像文件进行写入/读取,也不需要在不同的图像格式之间进行转换。 或者,也许我必须牺牲一些才能得到它?