-
Notifications
You must be signed in to change notification settings - Fork 41
Expand file tree
/
Copy pathMainActivity.java
More file actions
80 lines (73 loc) · 3.03 KB
/
MainActivity.java
File metadata and controls
80 lines (73 loc) · 3.03 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
package com.example.dell.twitter;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.view.View;
import android.widget.AdapterView;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;
import com.google.gson.Gson;
import java.io.IOException;
import java.util.ArrayList;
import okhttp3.Call;
import okhttp3.Callback;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;
public class MainActivity extends AppCompatActivity {
Button button;
EditText editText;
String s="";
ArrayList<Status> dataArrayList=new ArrayList<>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button=(Button)findViewById(R.id.button);
editText=(EditText)findViewById(R.id.editText);
ListView listView=(ListView)findViewById(R.id.list_view);
final DataAdapter dataAdapter=new DataAdapter(dataArrayList,this);
listView.setAdapter(dataAdapter);
final OkHttpClient okHttpClient = new OkHttpClient();
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
s=editText.getText().toString();
editText.setText("");
Request request=new Request.Builder().url("http://loklak.org/api/search.json?timezoneOffset=-330&q="+s).build();
okHttpClient.newCall(request).enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
Log.e("TAG", "onFailure:" );
}
@Override
public void onResponse(Call call, Response response) throws IOException {
String result=response.body().string();
Gson gson=new Gson();
final UserList userList=gson.fromJson(result,UserList.class);
MainActivity.this.runOnUiThread(new Runnable() {
@Override
public void run() {
dataArrayList.addAll(userList.getStatuses());
Log.e("TAG", "size "+dataArrayList.size() );
dataAdapter.notifyDataSetChanged();
}
});
}
});
}
});
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Intent intent=new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.setData(Uri.parse(dataArrayList.get(position).getLink()));
startActivity(intent);
}
});
}
}