我没有理由在Android中使用RxJava,在Android Architectural Components中使用LiveData.如果两者之间的用例和差异以及代码形式的示例示例进行解释,这将解释两者之间的差异,这将非常有用.
android rx-android reactive rx-java2 android-architecture-components
我正在做的事情似乎应该很简单,但在我阅读了每一个可能的Stackoverflow答案之后我仍然迷失了,我可以找到并搜索我能找到的每篇文章.
我正在使用预览SurfaceView并从我在AndroidManifest.xml中为screenOrientation ="landscape"设置的活动中捕获图像.
我按照示例相机应用程序代码进行操作,直到我在运行1.5的一些摩托罗拉设备上尝试我的应用程序之前一直工作.
我让OrientationEventListener运行正常,我使用反射来查看是否设置旋转:
final int latchedOrientation = roundOrientation(mLastOrientation + 90);
Parameters parameters = preview.camera.getParameters();
JPLog.d("Setting camera rotation = %d", latchedOrientation);
try {
// if >= 2.0
Method method = Camera.Parameters.class.getMethod("setRotation",
int.class);
if(method != null) {
method.invoke(parameters, latchedOrientation);
}
} catch(Throwable t) {
// if < 2.0
parameters.set("rotation", latchedOrientation);
}
preview.camera.setParameters(parameters);
Run Code Online (Sandbox Code Playgroud)
NexusOne(OS 2.2) - 效果很好.latchedOrientation = 0,图片OK在EXIF标题中没有任何旋转.
T-Mobile G1(OS 1.6) - 也很棒.latchedOrientation = 0,图片确定.
摩托罗拉Backflip(OS 1.5) - 图像旋转.latchedOrientation = 0,图片中没有EXIF旋转.
Motorola CLIQ(OS 1.5) - 图像旋转.latchedOrientation = 0,图片中没有EXIF旋转.
这些摩托罗拉设备发生了什么变化?我认为我的问题是摩托罗拉相机驱动程序没有旋转图像,所以找到了Android的Sanselan EXIF阅读课,并准备自己旋转它们.有趣的是,有EXIF标题但没有旋转元素. …
为了完全将Android SDK与我的演示者类分离,我试图找出避免访问我们通常使用R的资源ID的最佳方法.我以为我可以创建一个接口来访问字符串资源之类的东西,但我仍然需要ID来引用字符串.如果我要做的事......
public class Presenter {
private MyView view = ...;
private MyResources resources = ...;
public void initializeView() {
view.setLabel(resources.getString(LABEL_RES_ID);
}
}
Run Code Online (Sandbox Code Playgroud)
我仍然需要LABEL_RES_ID,然后将其映射到R.string.label我的资源桥.这很酷,因为我可以在用其他东西进行单元测试时将其换掉,但我不想管理另一个到字符串值的映射.
如果我放弃并只使用R.string值,我的演示者将再次绑定到我的视图.那不理想?是否有一个更容易的解决方案,人们用来解决这个问题,以使他们远离主持人.我不想以超出Android提供的方式管理字符串,因为我仍然希望将它们放在布局文件中并获得国际化等的好处.我想做一个可以与这个演示者一起工作的哑单元测试无需Android SDK即可生成R.java文件.这要问太多了吗?
我已经制作了一个android项目的签名apk.每当我的客户端尝试在模拟器上运行它时,他都会面临以下错误消息:
D:\Android\android-sdk-
windows\tools>adb install -r abc.apk
500 KB/s (6940708 bytes in 13.534s)
pkg: /data/local/tmp/abc.apk
Failure [INSTALL_PARSE_FAILED_NO_CERTIFICATES]
Run Code Online (Sandbox Code Playgroud)
分辨率是多少?
如果我将我的ImageView设置为可点击和可聚焦,它可以工作,但我无法分辨哪个图像是聚焦的.让它在视图周围绘制橙色边框的最佳方法是什么,以便用户知道它目前处于焦点位置?
我尝试将它放在LinearLayout中并将其设置为可聚焦且可点击,但没有任何运气.即使我在上面留有余量,也没有任何迹象表明它已被选中.