80,359
社区成员
发帖
与我相关
我的任务
分享
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<ListView
android:id="@+id/lv_contact"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
</LinearLayout>
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal" >
<LinearLayout
android:id="@+id/ll"
android:layout_width="match_parent"
android:layout_height="80dp"
android:gravity="center"
android:orientation="vertical" >
<TextView
android:id="@+id/tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="测试活动" />
<TextView
android:layout_marginTop="20dp"
android:id="@+id/shijian"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="测试时间" />
</LinearLayout>
</RelativeLayout>
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
public ListView lv;
public ArrayList<Map<String, Object>> list = new ArrayList<Map<String,Object>>();
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
init();
}
private void init(){
list.clear();
lv = (ListView) View.inflate(this,R.layout.main,null).findViewById(R.id.lv_contact);
new Thread(new Runnable() {
@Override
public void run() {
try {
OkHttpClient client = new OkHttpClient();
Request request = new Request
.Builder()
.url("http://120.36.153.174:9080/CargolistApi/select").build();
Response response = client.newCall(request).execute();
String responseData = response.body().string();
parseJSONWithJSONObject(responseData);
}catch (Exception e){
e.printStackTrace();
}
}
}).start();
}
private void parseJSONWithJSONObject(String jsonData) {
if (jsonData != null) {
try {
JSONObject jsonObject = new JSONObject(jsonData);
String resultCode = jsonObject.getString("flag");
//如果返回的值是success则正确
if (resultCode.equals("success")) {
JSONArray resultJsonArray = jsonObject.getJSONArray("data");
Log.d("MainActivity","data+++"+resultJsonArray); //数据是有获取到的
for (int i = 0; i < resultJsonArray.length(); i++) {
JSONObject Object = resultJsonArray.getJSONObject(i);
Map<String, Object> map = new HashMap<String, Object>();
try {
String name = Object.getString("cargono");
String shijian = Object.getString("variety");
Log.d("MainActivity","name is:"+name);
Log.d("MainActivity","shijian is"+shijian);
map.put("cargono", name);
map.put("variety", shijian);
//ArrayList集合
list.add(map);
}catch (Exception e) {
e.printStackTrace();
}
}
Message message = new Message();
message.what = 1;
handler.sendMessage(message);
}
}catch (Exception e){
e.printStackTrace();
}
}
}
@SuppressLint("HandlerLeak")
public Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
switch (msg.what) {
case 1:
Mybaseadapter list_item = new Mybaseadapter();
lv.setAdapter(list_item);
break;
}
}
};
public class Mybaseadapter extends BaseAdapter {
@Override
public int getCount() {
return list.size();
}
@Override
public Object getItem(int position) {
return list.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder viewHolder = null;
if (convertView == null) {
viewHolder = new ViewHolder();
convertView = getLayoutInflater().inflate(R.layout.view_home,null);
viewHolder.textView = (TextView) convertView.findViewById(R.id.tv);
viewHolder.shijian = (TextView) convertView.findViewById(R.id.shijian);
convertView.setTag(viewHolder);
} else {
viewHolder = (ViewHolder) convertView.getTag();
}
viewHolder.textView.setText(list.get(position).get("name").toString());
viewHolder.shijian.setText(list.get(position).get("shijian").toString());
return convertView;
}
}
final static class ViewHolder {
TextView textView;
TextView shijian;
}
@Override
public void onClick(View view) {
}
}