Tag: android

什么触发了View的measure()被调用

在我的应用程序中,我的View的onMeasure()覆盖之一有一个无限循环。 从我的onMeasure中的一个断点开始debugging源代码,我可以追踪自己一直到堆栈跟踪到PhoneWindow $ DecorView的measure()(我的View Hierarchy中最高级的类),ViewRoot .performTraversals()。 现在从这里开始,如果我继续走下去,我最终会通过Looper.loop()类中的消息再次调用PhoneWindow $ DecorView的measure()方法。 我在猜测,有些东西已经排好了需要重新测量的信息,就像一个无效的东西。 我的问题是,什么触发一个措施调用需要发生在一个视图? 根据我对布局/度量/绘制过程的理解,只有当在特定视图上调用invalidate()方法时,才会发生这种情况,并且会对该视图执行布局/测量/绘制过程,它的孩子。 我会认为,我的视图层次结构中最顶层的视图会失效。 但是,我已经明确地在每一个无效呼叫中都有一个断点,并且不会以某种无限的方式调用invalidate。 所以我不认为是这样。 是否有另一种方法来触发测量通行证? 内部可能会触发这个? 看到没有什么是无限无效的,我有种想法。

什么是armeabi以及为什么他们使用它

当我探索开放源代码的时候,我会多次看到这个库(armeabi),并且为了定义它,我发现了所有的结果,并且没有定义它,我想知道这个armeabi是什么,以及为什么它们使用它在Android应用程序。

调制解调器代码如何与Android代码进行通信

我想知道Android调制解调器代码如何调用/传递消息到Android应用层的高层次的想法。 假设我们以SMS为例。 如果networking发送短信和调制解调器(如高通C代码parsing)如何传输到Android应用层? 是否总是有一个JNI调用? 作为调制解调器和Android的界面? 你可以请与我们分享信息。 谢谢

在谷歌地图android api v2中设置最大缩放级别

我目前正在使用Google maps android API v2开发应用程序。 我的代码如下。 假设地图有几个标记,并放大显示所有标记。 LatLngBuilder.Builder builder = LatLngBounds.builder(); for(Marker m : markers){ builder.include(m.getPosition()); } LatLngBounds bounds = builder.build(); map.animateCamera(CameraUpdateFactory.newLatLngBounds(bounds, 10); 此代码工作正常,但我想停止animation时缩放级别达到17.0f; 看来地图API没有这样的方法来控制缩放级别。 有谁知道解决这个问题的任何想法?

如何在你的手机插件中获得你的上下文

这是我的Android插件,我的方法之一需要一个上下文,有没有办法如何获得这个上下文? public class GaziruPlugin extends CordovaPlugin{ @Override public boolean execute(String action, JSONArray args, CallbackContext callbackContext) throws JSONException { String value = args.getString(0); BASE64Decoder decoder = new BASE64Decoder(); try { byte[] imageByte = decoder.decodeBuffer(value); Classlogic method = new Classlogic(); //this method requires a context type. method.DoLogic(context,imageByte); } catch (IOException e) { // TODO Auto-generated catch block […]

IOException:“接收到的身份validation请求为空”(Apache Harmony / Android)

我想通过Android的HttpURLConnection(这是一个org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnection)发送一个GET,并在收到响应后,抛出一个IOException: 在doRequestInternal()中:“接收到的authentication质询为空” 这个错误是什么意思,是什么造成的? 我正在给授权标题写OAuth参数,但我也在其他场合也这样做,没有问题。 if (connection == null) { connection = (HttpURLConnection) new URL(endpointUrl).openConnection(); connection.setRequestMethod("GET"); } //… do some OAuth message signing connection.connect(); int statusCode = connection.getResponseCode(); // throws IOException

何时使用CursorJoiner / MatrixCursor / MergeCursor?

我正在探索不同的方式来从两个或多个连接表中优雅地获取数据。 我相信MergeCursor ( Android开发者指南 )似乎意味着可以(例如)通过连接两个查询(或单独添加视图作为行等)replace等效的SQL UNION – 所以,不是我想要的。 但是我对CursorJoiner和MatrixCursor是什么,以及如何使用它们CursorJoiner MatrixCursor 。 我已经看过他们的来源,并且(像往常一样)对我来说没有任何意义! 我发现他们使用的例子并没有清楚地解释结果是什么。 我真的很感谢他们的一个很好的描述,以及他们可能使用的背景。

在libGDX中的TrueType字体

有谁知道如何在libGDX中使用TTF字体? 我环顾四周,看到有关StbTrueTypeFont的事情,但它似乎并没有在最新版本。 编辑:我发现StbTrueType字体的东西,jar文件位于扩展目录。 我已经添加到我的项目。 现在我只需要弄清楚如何使用它。 任何例子?

用gradle签署产品口味

我打算将我的项目迁移到Gradle。 我的一个项目有多种产品风格,每个项目都必须在其发布版本中使用不同的签名configuration签名。 所以这是我迄今为止所尝试的: buildscript { … } apply plugin: 'android' android { compileSdkVersion 17 buildToolsVersion '17' signingConfigs { flavor1 { storeFile file("keystore") storePassword "secret" keyAlias "aliasForFlavor1" keyPassword "secretFlavor1" } flavor2 { storeFile file("keystore") storePassword "secret" keyAlias "aliasForFlavor2" keyPassword "secretFlavor2" } } productFlavors { flavor1 { signingConfig signingConfigs.flavor1 } flavor1 { signingConfig signingConfigs.flavor2 } } } […]

Facebook SDK v4 LoginButton忽略XML自定义

最近发布的新版Facebook SDK for Android(v4.0)导致了我正在使用的自定义LoginButton的奇怪行为。 以下是如何在不同的SDK版本中呈现相同的XML的比较。 问题似乎是SDK 4.x中的FB图标不能正确拉伸以适应自定义大小的button,并且在4.0.1处, android:layout_height属性将被完全忽略 。 我的问题是如何使SDK 4.x中的button像在SDK 3.x中一样? XML和Java解决scheme都是完全可以接受的。 适用于SDK 3.x的XML: <com.facebook.widget.LoginButton android:background="@color/com_facebook_blue" android:id="@+id/login_btn_facebook" android:layout_width="225dp" android:layout_height="50dp" android:layout_marginBottom="5dp" android:layout_marginTop="5dp" android:layout_gravity="center" android:onClick="onFacebookLoginClick" /> SDK 3.x(运行CM11S的OnePlus One上的截图)的外观如何: 用于SDK 4.x的XML(button的包已重命名+我不得不改变宽度和字体以匹配g +button): <com.facebook.login.widget.LoginButton android:background="@color/com_facebook_blue" android:id="@+id/login_btn_facebook" android:layout_width="221dp" android:layout_height="50dp" android:layout_marginBottom="5dp" android:layout_marginTop="5dp" android:layout_gravity="center" android:textSize="7pt" android:onClick="onFacebookLoginClick" /> SDK 4.0(在Genymotion Nexus 5上运行,未修改4.4.4的屏幕截图)的外观如何: SDK 4.0.1(Same Genymotion Nexus 5)的外观如何: 附加信息 摘自4.0 – > […]