Articles of 监听器

Android我可以使用多少个线程?

我有一个Android应用程序,它有单独的东西,但基本上都是线程(绝对是Android调试器的线程) 有多个animation侦听器可以相互循环和调用 倒计时器在启动后总是倒计时到零 现在我需要考虑添加更多的倒计时器。 我可以进行多少这种循环过程? 在这个特定的实现中,我不关心性能,效率等,直到它变得明显。 洞察力赞赏

为什么ButterKnife为@OnClick方法使用DebouncingOnClickListener?

我正在查看生成的ButterKnife代码,并注意到对于@OnClick注释,它使用的是由库实现的DebouncingOnClickListener 。 DebouncingOnClickListener作用是避免在同一帧上使用该侦听器对任何元素进行多次单击(为此,他们使用静态标志)。 你可以在这里看到实现。 我试图find一个解释,为什么他们决定在库管理的每个点击事件中使用它,但找不到任何。 那么,为什么他们使用它呢? 为什么他们决定ButterKnife的每个用户都需要这个? 不应该是决定使用它的用户? 为什么选择视图绑定可以帮助它提供这个“function”? 如果我想在同一帧上多次点击,会发生什么? 我无法使用ButterKnife进行点击活动。 我不假装冒犯,只想要一个解释,也许我错过了什么。

Android,XML格式的Checkbox监听器?

做这样的事情是可能的 XML: Java的: public void launchContactAdder(View v) { Intent i = new Intent(this, ContactAdder.class); startActivity(i); } 但有一个要求是,该方法必须是公开的,无效的,最重要的是将View作为参数。 现在我想用Checkbox按钮做同样的事情。 Checkbox有android:onclick属性,但是在Android教程(http://developer.android.com/resources/samples/ContactManager/index.html)中我可以看到这段代码 showInvisibleControl.setOnCheckedChangeListener(new OnCheckedChangeListener() { public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { Log.d(TAG, “mShowInvisibleControl changed: ” + isChecked); showInvisible = isChecked; populateContactList(); } }); 所以有一个onCheckedChanged(CompoundButton buttonView,boolean isChecked)方法。 有没有办法通过XML来做到这一点? 没有android:onCheckedChange属性,只有android:onClick属性,但正如我上面所写,该属性的名称必须有相应的方法名称,它将View作为参数,但从上面的代码我明白我必须有一个方法CompoundButton和boolean参数。 以“XML方式”以任何方式做到这一点?

在LongPress之后移动事件

在我的GestureDetector中使用LongPress后,如何收听移动事件? 当用户LongClick他启动选择模式时,可以将一个方块拖入屏幕。 但我注意到在使用LongPress后没有调用onScroll。

处理程序或听众。 什么是更好的?

处理程序或听众。 事件通知有什么用? 什么是更快,更有效等?

Android语音识别:在JB 4.1.2上重复调用SpeechRecognizer.startListening()失败

我有一个服务,我反复开始一个语音识别监听器,所以我可以有一个开放式会话供用户说话。 该类还处理Jelly Bean中的问题,如果在5秒内没有听到语音,则会抛出ERROR_SPEECH_TIMEOUT。 基本上这是有效的。 但是,如果我反复调用Recognizer.startListening(recognizerIntent),它会默默地失败,因为在这种情况下从不调用onBeginningOfSpeech()。 现在,如果我只是不说话,我的Jelly Bean超时处理程序将每次都重启监听器而不会失败。 似乎只有在调用onResults()之后才会失败,因为WAS会听到语音。 在调用onResults()之后,肯定会调用recognizer.startListening(recognizerIntent),但就像我说的那样,没有任何反应。 当它失败时它是随机的,Logcat中没有任何东西可以指出问题所在。 我只是不知道还有什么可以尝试的。 希望你们中的一位Android语音识别专家在此之前已经看过这个…… 最低:2.2目标:在JB:Android 4.1.2上进行测试 更多信息(11-01-13)我的HTC One的4.3更新肯定解决了这个问题。 我下面的语音识别服务现在可靠且准确。 我已经跑了至少几分钟没有错误。 至于4.1.2,在我更新到4.3之前,它看起来似乎工作得更好(谷歌是否改变了他们的任何东西?)……我不知道,但它仍然会遗漏一些所说的话,偶尔也会没有错误,只是停止收听(在这种情况下永远不会调用onBeginningOfSpeech())。 我想我必须就这个问题向我的用户发出有关Android 4.1.2的警告,因为我已经尽可能地使用了我的代码。 更多信息(09-17-13)据说,9月底有一个Android更新(4.3)将发布给HTC( http://www.ubergizmo.com/2013/09/htc-one-to-receive) –android-4-3-jelly-bean-update-this-9月/ )。 所以希望这将解决该设备上的这个问题。 对于运行Android 4.1.2且暂时停留在该版本上的应用用户来说问题仍然存在。 我仍然不知道在这些情况下该怎么做,希望这是唯一一个有这个问题的Android版本。 有没有办法找出有多少设备正在运行4.1.2? 更多信息(09-15-13)在这篇文章中: Google语音识别器无法在Android 4.x上启动 。 作者声明他正在HTC上看到这个问题。 我也有一个HTC,我正在看这个问题(Android 4.1.2)。 我想知道HTC是否独一无二? (或运行Android 4.1.2的任何设备) – 我无法确认在所有运行JB的最新设备上难以测试。 作者进一步指出,他的Nexxus 4.2.2工作正常。 谁能告诉我他们在哪个设备上看到这个问题? 更多信息(9-08-13)为了确认我的代码没有问题,我也在Android 2.3.3上进行了测试,并且我能够连续25次调用onResult()> startListening()。 在定位Android 4.1.2时,我无法通过3或4个电话。 我不敢相信没有其他人遇到过这个问题? public class VoiceRecogService extends […]

是否有可能在单击edittext时显示对话框消息?

我想点击一个edittext并显示对话日期,所以我试试 mDateDisplay = (EditText) findViewById(R.id.dateDisplay); mDateDisplay.setOnFocusChangeListener(new View.OnFocusChangeListener() { @Override public void onFocusChange(View v, boolean hasFocus) { if (hasFocus) { showDialog(DATE_DIALOG_ID); } } }); 该对话框将显示mDateDisplay是否为按钮 但我想使用edittext 我该怎么办?

当有数据可用于在socket中读取时,android中是否有任何回调机制

好吧,我熟悉c,iOS环境下的套接字编程。但现在尝试通过套接字连接我的android和我的远程服务器……作为一个启动,我在C中编写了一个简单的服务器程序并在我的桌面上运行它耐心地等待连接请求,接受连接,然后等待一些请求字符串,并在获取请求字符串时返回一些响应字符串,然后再次等待下一个请求然后继续..你明白了… 至今 我已经与我的android和服务器建立了连接 发送和接收数据 这是我的客户端代码.. public class SocketMaster { private Socket clientSocket = null; BufferedReader socketReadStream = null; public boolean connectToHost(String ip, int port){ try { InetAddress serverAddr = InetAddress.getByName(ip); try { clientSocket = new Socket(serverAddr, port); socketReadStream = new BufferedReader(new InputStreamReader(clientSocket.getInputStream())); String line = null; String stringToSend = “This is from client …Are you […]

android-多onClick监听器在一个按钮

我创建了一个像Mybutton.java这样的自定义组件,我在Mybutton.java中设置了一个onclick监听器。 现在,在我的新活动中,我必须调用Mybutton并在onclick监听器中添加内容。 但是,如果我使用OnClickListener mClickListener = new OnClickListener(){……它将替换旧内容。 我希望它可以一起做新旧听众。 我搜索了一些信息,发现我可以实现这个方法。 经过多次尝试,我仍然遇到错误。 谁能给我一个简单的例子,我可以学习修改它?

为什么没有UtteranceProgress Listener在Text to Speech上被调用?

我试图在文本的开头和结尾调用一些方法,所以我使用了setOnUtteranceProgressListener,但是它没有工作/被调用。 我究竟做错了什么? 这里需要的代码: 类: public class SpeechRecognizerActivity extends Activity implements TextToSpeech.OnInitListener 初始化方法: @Override public void onInit(int status) { if (status == TextToSpeech.SUCCESS) { String language = Locale.getDefault().getLanguage(); int result = tts.setLanguage(Locale.US); if (result == TextToSpeech.LANG_MISSING_DATA || result == TextToSpeech.LANG_NOT_SUPPORTED) { Log.e(“TTS”, “This Language is not supported”); } else { } } else { Log.e(“TTS”, “Initilization […]