我有时有逗号,分离该数字就像一根绳索1,500,我需要将其转换为int,目前它抛出一个异常,可有人告诉我如何使有时候解决这个问题我可以用逗号等次输入数字用逗号,它仍将转换.
我只是想知道是否还有在我的Android应用程序中添加Google +1按钮.我在Android Market上看过+1,所以我认为会有一些方法可以做到这一点.
我有一个活动,其中有一个EditText,并在输入键搜索结果显示,所以我只想关闭键盘,当搜索结果即将显示,以防止用户必须这样做.但是,如果用户想要优化他的搜索,键盘应该打开,如果他再次点击EditText.
这比我想象的要困难得多,我一直在搜索并尝试了一些大多数甚至不关闭我的HTC键盘的东西,一种方法,其中InputType设置为INPUT_NULL关闭键盘,但之后不打开.
有关如何做到这一点的任何建议?
因此,有一些错误会不断出现与我相关的跟踪中的任何内容,这里有一个示例跟踪:
java.lang.NullPointerException
at android.app.ActivityThread.handleStopActivity(ActivityThread.java:2484)
at android.app.ActivityThread.access$1800(ActivityThread.java:117)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:948)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:130)
at android.app.ActivityThread.main(ActivityThread.java:3695)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:507)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:878)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:636)
at dalvik.system.NativeStart.main(Native Method)
Run Code Online (Sandbox Code Playgroud)
其他迹线类似,只有行号变化:2484,2472和2476.
另外3个提到设备的报道提到:M865华为Ascend II应该有2.3.
在给定行号查看源代码2.1 - 4.1(我的应用程序minSdk为7)之后,这些行可能会抛出错误:
2.3.7 - 第2472行
2.3.6 - 第2472行
private final void handleStopActivity(IBinder token, boolean show, int configChanges) {
ActivityClientRecord r = mActivities.get(token);
r.activity.mConfigChangeFlags |= configChanges; // line 2472
StopInfo info = new StopInfo();
performStopActivityInner(r, info, show);
...
Run Code Online (Sandbox Code Playgroud)
是什么导致了这个以及如何预防?
从UI线程运行异步任务然后修改UI是android开发中的常见问题,因此我决定花一些时间,研究并使用不同的技术,找到最适合我的方法.
我认为重要的因素是:
Activity或者Fragment应该保持尽可能多的线程管理以下是关于各种方法的印象摘要(可能有些错误,有些只是意见):
当我第一次跳入Android时,我AsyncTask没有使用简单LoaderManager:
AsyncTaskManager一个用活动生命周期来管理它们.这似乎是推荐的方法,所以我研究了一下:
Fragment生命周期中的任务,并且从我的理解基本上只是在必要时重新启动任务.在活动重新启动后重新启动活动之前,它似乎无法接收启动任务的结果.Parcelable或Serialiazable进入Bundle对象.这是我确定的方法:
所以,我来到了,使用的结论Handler,Threads和Messages是一个更好的解决办法,但我相信,我失去了一些东西,因为几乎到处都看着我的建议是使用AsyncTaskLoader方法.我错过了什么?
感谢您的投入.
multithreading android android-ui android-asynctask android-handler
我正在寻找在我的应用程序中实现CursorLoader,但我有一个小问题,似乎没有办法只是将原始查询传递给CursorLoader构造函数.
我可能在文档(和谷歌)中遗漏了一些东西,所以如果有人能指出我使用CursorLoader类运行原始查询的简单方法,我将不胜感激.否则我将不得不创建自己的CursorLoader类,其中包含必要的功能,我正在努力避免这种功能.
我想使用adb shell dumpsys alarm调试我正在设置的一些警报,但它产生了大量的数据是否有任何方法可以将输出限制为某个应用程序?
我试过这个无济于事: adb shell dumpsys com.mypackage
提交的父母的顺序是否有一些约定?
因为提交的父项之一应该是当前正在合并的当前分支上的提交,其余的是其他合并分支的先前提交.
我想确定当前分支的先前提交,我正在使用pygit它返回一个提交的父母列表,直觉上我认为父母的顺序可能有意义,但我没有发现明确提到这一点.
我编写了这个实用程序函数,使用第一个父提交来遍历分支:
def walk_branch(pygit_repository, branch_oid):
"""
Walk a single branch
"""
from pygit2 import GIT_SORT_TOPOLOGICAL
previous_first_parent_oid = None
for commit in pygit_repository.walk(branch_oid, GIT_SORT_TOPOLOGICAL):
if previous_first_parent_oid is None or commit.oid == previous_first_parent_oid:
previous_first_parent_oid = commit.parents[0].oid if len(commit.parents) else None
yield commit
Run Code Online (Sandbox Code Playgroud) 我正在使用已编译SQLiteStatement的事务来优化SQLite事务,但我正在阅读该execute函数的文档:
如果它不是SELECT/INSERT/DELETE/UPDATE,则执行此SQL语句,例如CREATE/DROP表,视图,触发器,索引等.
这似乎意味着这个函数不应该与SELECT / INSERT / DELETE / UPDATE语句一起使用,但我有一个代码,它使用插入和工作.
我知道executeInsert和其他方法,但executeUpdateDelete在我的API级别不可用,所以我可以使用execute吗?
另外,如果我不需要最后一个插入ID或受影响的行数,我应该使用execute而不是executeInsert等等,换句话说,它是否更有效?
android ×7
git ×2
adb ×1
alarmmanager ×1
android-ui ×1
c# ×1
google-plus ×1
libgit2 ×1
pygit2 ×1
sqlite ×1