Tag: java的

在android / java中正确引入延迟

我想使用延迟在我的项目中设置booleanVariable。 所以基本上我有一个布尔变量,当用户触摸按钮时,该变量设置为true。 两秒后,布尔变量应该设置回false。 所以我的问题是如何引入2秒的延迟? 我有以下代码,但没有工作 – boolean userTouch; public void buttonTouched(){//This gets called when user touches the button setUserTouch(true); try{ Thread.sleep(2000); }catch(Exception e){ e.printStackTrace; } setUserTouch(false); } 在另一种方法中,我调用getUserTouch()方法来查看用户是否在过去2秒内触摸了该按钮。 但该方法始终设置为false。 它永远不会是真的。 我的代码有问题吗? 应该是setUserTouch(true); 方法在try块内? 还有其他任何方式我可以实现我的目标吗? 即我可以引入2秒延迟的任何其他方法。 我现在正在尝试倒数计时器。 但我不知道任何其他方法。

如何知道链接将被重定向

我遇到了这种类型的问题 – 当我尝试下载某些网站的favicon时,您会遇到重定向(例如google.com / favicon.ico – > www.google.com / favicon.ico)。 在这种情况下,我的代码不保存图像。 我想知道是否可以知道页面是否被重定向,或者如何更改我的代码以解决这个障碍。 我希望得到你的帮助。 @Override protected Boolean doInBackground(Void…param) { Log.d(“url in NetworkTask”, url); HttpGet httpGet = new HttpGet(url); AndroidHttpClient httpClient = AndroidHttpClient .newInstance(“Android”); HttpResponse httpResponse = null; try { httpResponse = httpClient.execute(httpGet); } catch (IOException e) { e.printStackTrace(); } if(httpResponse!=null) primaryCodeStatus = httpResponse.getStatusLine() .getStatusCode(); else Log.d(“httpResponse”, […]

Spring Data elasticsearch @Query嵌套对象的注释

我有两节课, @Document public class PracticeQuestion { private int userId; private List questions; // Getters and setters } public class Question { private int questionID; private String type; // Getters and setters } 我的JSON文档是这样的, { “_id” : ObjectId(“506d9c0ce4b005cb478c2e97”), “userId” : 1, “questions” : [ { “questionID” : 1, “type” : “optional” }, { “questionID” : 3, […]

对于循环…帮助

有人能帮我理解这个循环吗? byte tempBuffer[] = new byte[64*1024]; for (int i = 0; i < tempBuffer.length; i++) { wavPanel.addAudioByte(tempBuffer[i]); } 在我看来它的工作原理如下: 在此期间,循环次数与tempBuffer的大小相同 用字节填充tempBuffer或者执行wavPanel对象的addAudioByte()方法n次 对不起我的困惑。 用语言告诉我,循环的作用是什么? 提前致谢。 卡洛斯弗雷拉

-POST Json with HttpUrlConnection

当我使用python-script向此服务器发送请求时,我为我的应用程序构建了服务器端,它的工作正常,但是使用我的应用程序它不起作用。 服务器: 服务器包含一个数据库。 当我发送一个JSON {“name”:”your_name”} ,服务器在DB中保存名称。 应用(Android): @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); buttonSend=(Button)findViewById(R.id.button_send); buttonSend.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { AsyncTaskRunner postReq = new AsyncTaskRunner(); postReq.execute(“start”); } }); } private class AsyncTaskRunner extends AsyncTask{ @Override protected String doInBackground(String… params) { try { String url=”my url”; URL object=new URL(url); HttpURLConnection con […]

Java(家庭作业)中的加法,减法,乘法和除法

我已经写了这段代码作为我在AP计算机科学中收到的作业的答案,我的老师正在重做这个,因为答案不起作用。 我只能在我的机器上编译它,所以我依靠我的老师来确定现在产生的结果,如下所示。 这项任务是在今晚午夜之前完成的,我拖延到现在为止在这里寻求帮助,但是,我非常感激。 此外,这是我第一次来这里,很抱歉,有些代码格式不正确。 谢谢您的帮助! 结果ATM if a = 3/4 and b = 5/6 a.add(b) produces 35/24; This should be 19/12 a.subtract(b) produces 1/0; This should be -1/12 a.divide(b) produces 11/1; This should be 9/10 a.multiply(b) produces 6/-5; This should be 5/8 这是代码。 import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.border.TitledBorder; class Fraction{ private int […]

如何在本地文件上使用XMLPullParser

我使用XMLPullParser来读取assets文件夹中的本地XML文件,该教程的代码在android开发者网站上: 链接: http : //developer.android.com/reference/org/xmlpull/v1/XmlPullParser.html 码: import java.io.IOException; import java.io.StringReader; import org.xmlpull.v1.XmlPullParser; import org.xmlpull.v1.XmlPullParserException; import org.xmlpull.v1.XmlPullParserFactory; public class SimpleXmlPullApp { public static void main (String args[]) throws XmlPullParserException, IOException { XmlPullParserFactory factory = XmlPullParserFactory.newInstance(); factory.setNamespaceAware(true); XmlPullParser xpp = factory.newPullParser(); xpp.setInput( new StringReader ( “Hello World!” ) ); int eventType = xpp.getEventType(); while (eventType != XmlPullParser.END_DOCUMENT) […]

Android,Web Services,AsyncTask请帮助一个菜鸟/确保我正确的开始

自从orignal post我做了一个连接到JSON API的Android应用程序后,我做了编辑 。 到目前为止一切正常,除非服务器有延迟。 如果需要太长时间,UI当然可以停止响应。 我读过asynctask可以解决我的问题。 不过,我对这些例子非常热心。 这是进行http调用的restclient类…解析json并将自定义对象存储到我的其他类可以访问的公共列表中。 package com.bde.dgcr; import android.app.Activity; import android.content.Context; import android.os.AsyncTask; import android.util.Log; import android.view.View; import android.widget.ListView; import org.apache.http.HttpEntity; import org.apache.http.HttpResponse; import org.apache.http.client.ClientProtocolException; import org.apache.http.client.HttpClient; import org.apache.http.client.methods.HttpGet; import org.apache.http.impl.client.DefaultHttpClient; import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.List; public class […]

elasticsearch top命中聚合java API查询

我正在运行以下查询,并想要检索每个桶的热门点击量。 但在少数情况下,我看到每个桶有多个文档。 我想每桶只返回一个文件。 有人可以审查查询并建议。 SearchResponse sr=client.prepareSearch(versionIndexName).setTypes(versionIndexType).setQuery(Quer yBuilders.boolQuery().must(QueryBuilders.rangeQuery(“indexDate”).lte(givenTime))) .addAggregation(AggregationBuilders.terms(“form.id”).field(“form.id”).size(0) .subAggregation(AggregationBuilders.topHits(“top”).setExplain(true).setSize(1) .setFrom((size*index)).addSort(SortBuilders.fieldSort(“indexDate”) .order(SortOrder.DESC)).setFetchSource(true))).execute().actionGet(); 查询中的步骤: 按indexDate过滤小于或等于给定日期。 基于formId的聚合。 每个formId形成桶。 按降序排序并返回每个桶的最高命中结果。

在android中使用simpleAdapter的NullPointerException

我使用simpleAdapter创建列表视图,但是我收到此错误: Caused by: java.lang.NullPointerException at com.tab.Activity.onCreate(Activity.java:36) 这是我正在使用的代码: ArrayList<HashMap> list = new ArrayList<HashMap>(); private SimpleAdapter notes; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.layout); notes = new SimpleAdapter( this, list, R.layout.display_layout, new String[] { “line1” }, new int[] { R.id.text1} ); ListView lv = (ListView) findViewById(R.id.listview); lv.setAdapter( notes ); } 第36行将是 new int[] { R.id.text1} ); […]