Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private String[] resultArray;
- private EditText searchBox;
- private Button searchBtn;
- private String search_url = "http://ajax.googleapis.com/ajax/services/search/web?v=1.0&q=";
- private String search_query;
- @Override
- protected void onCreate(Bundle savedInstanceState)
- {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_my);
- listViewGoogle = (ListView)findViewById(R.id.listviewgoogle);
- searchBox = (EditText)findViewById(R.id.searchBox);
- searchBtn = (Button)findViewById(R.id.searchBtn);
- searchBtn.setOnClickListener(new View.OnClickListener()
- {
- @Override
- public void onClick(View v)
- {
- new JsonSearchTask().execute();
- try
- {
- search_query = search_url + searchBox.getText().toString();
- new JsonSearchTask().execute();
- ArrayAdapter adapter = new ArrayAdapter<String>(this, R.layout.activity_listviewgoogle, resultArray);
- listViewGoogle.setAdapter(adapter);
- }
- catch (Exception e)
- {
- // TODO: handle exception
- }
- }
- });
- }
- private class JsonSearchTask extends AsyncTask<Void, Void, Void>
- {
- @Override
- protected Void doInBackground(Void... arg0)
- {
- try
- {
- parseResult(sendQuery(search_query));
- }
- catch (JSONException e)
- {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- catch (IOException e)
- {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return null;
- }
- }
- private String sendQuery(String query) throws IOException
- {
- String queryResult = "";
- URL searchURL = new URL(query);
- HttpURLConnection httpURLConnection = (HttpURLConnection) searchURL.openConnection();
- if (httpURLConnection.getResponseCode() == HttpURLConnection.HTTP_OK)
- {
- InputStreamReader inputStreamReader = new InputStreamReader(httpURLConnection.getInputStream());
- BufferedReader bufferedReader = new BufferedReader(inputStreamReader, 8192);
- String line = null;
- while ((line = bufferedReader.readLine()) != null)
- {
- queryResult += line;
- }
- bufferedReader.close();
- }
- return queryResult;
- }
- private void parseResult(String json) throws JSONException
- {
- String parsedResult = "";
- JSONObject jsonObject = new JSONObject(json);
- JSONObject jsonObject_responseData = jsonObject.getJSONObject("responseData");
- JSONArray jsonArray_results = jsonObject_responseData.getJSONArray("results");
- resultArray = new String[jsonArray_results.length()];
- for(int i = 0; i < jsonArray_results.length(); i++)
- {
- JSONObject jsonObject_i = jsonArray_results.getJSONObject(i);
- parsedResult = "title: " + jsonObject_i.getString("title") + "n";
- parsedResult += "url: " + jsonObject_i.getString("url") + "n";
- //parsedResult += "n";
- resultArray[i] = parsedResult;
- }
- }
- <TextView xmlns:android="http://schemas.android.com/apk/res/android"
- android:id="@+id/label"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- android:padding="10dip"
- android:textSize="16dip"
- android:textStyle="bold"
- android:gravity="center" >
- </TextView>
- <LinearLayout
- xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:tools="http://schemas.android.com/tools"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- android:orientation="horizontal"
- android:id="@+id/parentOuter" >
- <LinearLayout
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:orientation="vertical" >
- <EditText
- android:layout_width="fill_parent"
- android:layout_height="match_parent"
- android:hint="type to search..."
- android:layout_weight="2"
- android:id="@+id/searchBox" />
- <Button
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:text="Search Me!"
- android:layout_weight="2"
- android:id="@+id/searchBtn" />
- <ListView
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:id="@+id/listviewgoogle"
- android:layout_weight="1" />
- </LinearLayout>
- </LinearLayout>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement