我的应用程序中有一个ImageView,可以位于屏幕上的任何位置 在触摸我想要移动此视图在屏幕的中心。 我尝试了Translate Animation和RELATIVE_TO_PARENTfunction的这个function,如下所示 TranslateAnimation translateAnimation1 = new TranslateAnimation( TranslateAnimation.RELATIVE_TO_PARENT,0.0f, TranslateAnimation.RELATIVE_TO_PARENT,0.5f, TranslateAnimation.RELATIVE_TO_PARENT,0.0f, TranslateAnimation.RELATIVE_TO_PARENT,0.5f); 但ImageView从当前位置向下移动50%(屏幕)。 有没有办法将这个视图移动到屏幕的中心,而不pipe它的当前位置?
我一直在开发相当长的一段时间,现在我正在尝试制作一个应用程序来取代原来的家庭(例如HTC的感觉)。 当用户点击手机上的主页button时,我需要打开应用程序。 所以基本上这是一个家庭替代品。 有没有人知道如何去做这件事?
我见过很多Android的答案,build议在某些情况下调用垃圾回收器。 在进行内存耗尽操作之前,在Android中请求垃圾收集器是否是一个好习惯? 如果不是,我是否应该只在出现OutOfMemory错误时调用它? 在使用垃圾收集器之前,我还有其他的事情吗?
我正在尝试使用Android NDK。 有没有办法将JNI中创build的数组(在我的情况下,一个int[] )返回给Java? 如果是这样,请提供一个JNI函数的简单例子。 -谢谢
是否有可能在ListView重绘单个行? 我有一个ListView的LinearLayout的行。 我倾听一个偏好改变,有时我需要改变一个单一行的LinearLayout中的一个View 。 有没有办法让它重绘该行,而无需调用listview.notifyDatasetChanged() ? 我已经尝试调用view.invalidate()在视图( LinearLayout ),但它不重绘该行。
基本上我想知道如果我们可以在Android操作系统<3.0的设备中有片段布局。 我的应用程序顶部有5个不同的button,开始总是第一个button被默认点击,所以这些button下方的视图是第一个视图。 现在当你点击它旁边的第二个button时,我不希望标题图像被刷新,但它下面的视图需要刷新。 所以它像更新标题图像button下面的片段。 所以我们可以在OS <3.0的设备上安装Android的片段。 萨纳。
我想在用户想要收集日志的时候将Android logcat转储到一个文件中。 通过adb工具,我们可以使用adb logcat -f filename将日志redirect到一个文件,但是我怎样才能以编程的方式执行这个操作呢?
我正在安装Fedora 14(Linux)的全新安装Android SDK。 我安装了eclipse,运行tools / android sdk工具来安装SDK的所有Eclipse组件。 当我自己selectDDMS时,我能够安装DDMS。 而对于最后一个组件 – Android开发人员工具,我得到了粘贴在下面的丑陋的错误消息。 现在我困在Eclipse的依赖地狱。 我已经通过Fedora中的可用软件包进行了search,找不到满足此Eclipse依赖关系的文件。 任何人都可以请求翻译Eclipse所要求的内容以及Fedora包的内容。 丑陋的错误: Cannot complete the install because one or more required items could not be found. Software being installed: Android Development Tools 0.9.9.v201009221407-60953 (com.android.ide.eclipse.adt.feature.group 0.9.9.v201009221407-60953) Missing requirement: Android Development Tools 0.9.9.v201009221407-60953 (com.android.ide.eclipse.adt.feature.group 0.9.9.v201009221407-60953) requires 'org.eclipse.wst.sse.core 0.0.0' but it could not be found
播放保存在原始资源中的MP3文件时,我遇到了一个问题:当文件开始播放时,它可能会产生四分之一秒的声音,然后重新启动。 (我知道这基本上是这里描述的问题的一个重复,但是提供的解决scheme并没有为我工作。)我已经尝试了几件事情,并在这个问题上取得了一些进展,但并不完全固定。 以下是我如何设置播放文件: mPlayer.reset(); try { AssetFileDescriptor afd = getResources().openRawResourceFd(mAudioId); if (afd == null) { Toast.makeText(mOwner, "Could not load sound.", Toast.LENGTH_LONG).show(); return; } mPlayer.setDataSource(afd.getFileDescriptor(), afd.getStartOffset(), afd.getLength()); afd.close(); mPlayer.prepare(); } catch (Exception e) { Log.d(LOG_TAG, "Could not load sound.", e); Toast.makeText(mOwner, "Could not load sound.", Toast.LENGTH_LONG) .show(); } 如果我退出活动(调用mPlayer.release() )并返回它(创build一个新的MediaPlayer),则通常(但不是总是)结束, 只要我加载相同的声音文件。 我尝试了几个没有任何区别的东西: 将声音文件加载为资源而不是资源。 使用MediaPlayer.create(getContext(), mAudioId)创buildMediaPlayer并跳过对setDataSource(…)和prepare()的调用。 然后我注意到LogCat总是在播放开始的时候显示这行: […]
我在我的应用程序中有一个服务,每10分钟运行一次。 它基本上检查我们的服务器,看看是否一切正常运行,并通知用户任何问题。 我创build了这个应用程序供我们公司内部使用。 我的同事在长周末使用了应用程序,并注意到设备进入睡眠状态时没有执行任何检查。 我的印象是,服务应该继续在后台运行,直到我明确地调用我的代码中的stopService() 。 因此,最终,我的目标是让服务运行,直到用户点击应用程序中的closuresbutton或终止进程。 我听说WakeLock是为了防止屏幕closures,这不是我想要的。 然后我听说另外一个称为部分WakeLock的东西,即使在设备睡着的时候也能保持CPU运行。 后者听起来更接近我所需要的。 我如何获得这个WakeLock,我应该什么时候发布它,还有其他方法呢?