80,351
社区成员
发帖
与我相关
我的任务
分享
这是我的搜索界面
package com.example.peterliqi.moneyc;
import android.app.Activity;
import android.app.DatePickerDialog;
import android.app.Dialog;
import android.app.TimePickerDialog;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.view.View;
import android.widget.AdapterView;
import android.widget.Button;
import android.widget.DatePicker;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.Spinner;
import android.widget.TextView;
import android.widget.TimePicker;
import android.widget.Toast;
import com.example.peterliqi.moneyc.LEI.SearchService;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.HashMap;
/**
* Created by Peterliqi on 5/16/2016.
*/
public class SearchActivity extends Activity {
StringBuilder str = new StringBuilder("");
StringBuilder sts = new StringBuilder("");
private Button submit;
private Button backcheck;
private EditText sn1;
private EditText owner1;
private TextView tld;
private EditText dayFrom1;
private TextView tk1;
private ListView lv;
private EditText show;
private EditText show1;
private ArrayList<HashMap<String, Object>> listData;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_sarch);
sn1 = (EditText) findViewById(R.id.csn);
owner1 = (EditText) findViewById(R.id.cowner);
lv = (ListView) findViewById(R.id.listview);
//ListView 的数据来源于数据适配器
Button dateBn = (Button) findViewById(R.id.dateBn);
Button dateBn1 = (Button) findViewById(R.id.dateBn1);
backcheck = (Button) findViewById(R.id.backcheck);
tk1=(TextView) findViewById(R.id.tk);
Spinner spinner = (Spinner) findViewById(R.id.spinner2);
spinner.getSelectedItem();
spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view,
int pos, long id) {
// String[] languages = getResources().getStringArray(R.array.ctype);
String TP = parent.getItemAtPosition(pos).toString();
tk1.setText(TP);
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
// Another interface callback
}
});
}
public void backccc(View view) {
final String sn = sn1.getText().toString().trim();
final String owner = owner1.getText().toString().trim();
final String SNStatus = tk1.getText().toString().trim();
final String dayFrom = show.getText().toString().trim();
final String dayTo = show1.getText().toString().trim();
new Thread(){
public void run(){
final String fanhui= SearchService.Searchservice(sn,owner,SNStatus,dayFrom,dayTo);
if (fanhui!=null){
runOnUiThread(new Runnable() {
@Override
public void run() {
try {
JSONObject jsonObjs = new JSONObject(fanhui);
JSONArray jsonObja=jsonObjs.getJSONArray("data");
listData = new ArrayList<HashMap<String, Object>>();
for (int i = 0;i<jsonObja.length();i++) {
JSONObject jsonObj=jsonObja.getJSONObject(i);
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("id",jsonObj.getInt("id"));
map.put("userName",jsonObj.getString("userName"));
map.put("SN",jsonObj.getString("SN"));
map.put("checkin_reason",jsonObj.getString("checkin_reason"));
map.put("station",jsonObj.getString("station"));
map.put("BU",jsonObj.getString("BU"));
map.put("agingDay",jsonObj.getString("agingDay"));
map.put("checkinDate",jsonObj.getString("checkinDate"));
map.put("checkoutDate",jsonObj.getString("checkoutDate"));;
map.put("SNStatus",jsonObj.getString("SNStatus"));
map.put("owner",jsonObj.getString("owner"));
map.put("createDate",jsonObj.getString("createDate"));
map.put("checkinTimes",jsonObj.getString("checkinTimes"));
listData.add(map);
}
} catch (JSONException e1) {
throw new RuntimeException(e1);
}
Message msg = new Message();
msg.what = 0;
handler.sendMessage(msg);
}
});
}
else {
Message msg = new Message();
msg.what = 1;
handler.sendMessage(msg);
}
}
}.start();
}
public Handler handler= new Handler(){
@Override
public void handleMessage(Message msg) {
// TODO Auto-generated method stub
try {
switch(msg.what)
{
case 0:
MylvAdapter lvAdapter = new MylvAdapter(SearchActivity.this, listData);
lv.setAdapter(lvAdapter);
break;
case 1:
Toast.makeText(SearchActivity.this, "<JSON>", Toast.LENGTH_SHORT).show();
System.out.println("<JSON>");
break;
default:
break;
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
super.handleMessage(msg);
}
};
}
ViewHolder viewHolder = null;
if (convertView == null){
convertView = inflater.inflate(R.layout.list_item,null);
viewHolder = new ViewHolder();
viewHolder.tv1=(TextView)convertView.findViewById(R.id.userming);
viewHolder.tv2=(TextView)convertView.findViewById(R.id.xvliehao);
viewHolder.tv3=(TextView)convertView.findViewById(R.id.cheliyou);
viewHolder.tv4=(TextView)convertView.findViewById(R.id.gongzhan);
viewHolder.tv5=(TextView)convertView.findViewById(R.id.bumen);
viewHolder.tv6=(TextView)convertView.findViewById(R.id.xianggerizi);
viewHolder.tv7=(TextView)convertView.findViewById(R.id.chekinshij);
viewHolder.tv8=(TextView)convertView.findViewById(R.id.outtime);
viewHolder.tv9=(TextView)convertView.findViewById(R.id.zhuangtai);
viewHolder.tv10=(TextView)convertView.findViewById(R.id.owneraa);
viewHolder.tv11=(TextView)convertView.findViewById(R.id.creashijian);
viewHolder.tv12=(TextView)convertView.findViewById(R.id.cishu);
convertView.setTag(viewHolder);
}
else {
viewHolder = (ViewHolder) convertView.getTag();
}
你定义了viewholder,却没有初始化,也没有使用
这是ListView的样式。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/userming"
android:singleLine="true"
android:ellipsize="end"
android:text="."
android:textColor="#000000"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/xvliehao"
android:singleLine="true"
android:ellipsize="end"
android:text="."
android:textColor="#000000"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/cheliyou"
android:singleLine="true"
android:ellipsize="end"
android:text="."
android:textColor="#000000"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/gongzhan"
android:singleLine="true"
android:ellipsize="end"
android:text="."
android:textColor="#000000"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/bumen"
android:singleLine="true"
android:ellipsize="end"
android:text="."
android:textColor="#000000"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/xianggerizi"
android:singleLine="true"
android:ellipsize="end"
android:text="."
android:textColor="#000000"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/chekinshij"
android:singleLine="true"
android:ellipsize="end"
android:text="."
android:textColor="#000000"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/outtime"
android:singleLine="true"
android:ellipsize="end"
android:text="."
android:textColor="#000000"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/zhuangtai"
android:singleLine="true"
android:ellipsize="end"
android:text="."
android:textColor="#000000"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/owneraa"
android:singleLine="true"
android:ellipsize="end"
android:text="."
android:textColor="#000000"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/creashijian"
android:singleLine="true"
android:ellipsize="end"
android:text="."
android:textColor="#000000"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/cishu"
android:singleLine="true"
android:ellipsize="end"
android:text="."
android:textColor="#000000"
/>
</LinearLayout>
这是MylvAdapter
package com.example.peterliqi.moneyc;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;
import java.util.ArrayList;
import java.util.HashMap;
/**
* Created by Peterliqi on 5/31/2016.
*/
public class MylvAdapter extends BaseAdapter {
private LayoutInflater inflater;
static ArrayList<HashMap<String, Object>> listData;
public MylvAdapter(SearchActivity context, ArrayList<HashMap<String, Object>> listData) {
super();
this.inflater= LayoutInflater.from(context);
this.listData = listData;
}
@Override
public int getCount() {
return listData.size();
}
@Override
public Object getItem(int position) {
return listData.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
class ViewHolder{
TextView tv1,tv2,tv3,tv4,tv5,tv6,tv7,tv8,tv9,tv10,tv11,tv12;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder viewHolder = null;
if (convertView == null){
convertView = inflater.inflate(R.layout.list_item,null);
TextView tv1=(TextView)convertView.findViewById(R.id.userming);
TextView tv2=(TextView)convertView.findViewById(R.id.xvliehao);
TextView tv3=(TextView)convertView.findViewById(R.id.cheliyou);
TextView tv4=(TextView)convertView.findViewById(R.id.gongzhan);
TextView tv5=(TextView)convertView.findViewById(R.id.bumen);
TextView tv6=(TextView)convertView.findViewById(R.id.xianggerizi);
TextView tv7=(TextView)convertView.findViewById(R.id.chekinshij);
TextView tv8=(TextView)convertView.findViewById(R.id.outtime);
TextView tv9=(TextView)convertView.findViewById(R.id.zhuangtai);
TextView tv10=(TextView)convertView.findViewById(R.id.owneraa);
TextView tv11=(TextView)convertView.findViewById(R.id.creashijian);
TextView tv12=(TextView)convertView.findViewById(R.id.cishu);
convertView.setTag(viewHolder);
}
else {
viewHolder = (ViewHolder) convertView.getTag();
}
try {
String userST=listData.get(position).get("userName").toString();
String snST=listData.get(position).get("SN").toString();
String checkin_reasonST=listData.get(position).get("checkin_reason").toString();
String stationST=listData.get(position).get("station").toString();
String buST=listData.get(position).get("BU").toString();
String agingDayST=listData.get(position).get("agingDay").toString();
String checkinDateST=listData.get(position).get("checkinDate").toString();
String checkoutDateST=listData.get(position).get("checkoutDate").toString();
String SNSST=listData.get(position).get("SNStatus").toString();
String ownST=listData.get(position).get("owner").toString();
String creatST=listData.get(position).get("createDate").toString();
String checkinST=listData.get(position).get("checkinTimes").toString();
viewHolder.tv1.setText(userST);
viewHolder.tv2.setText(snST);
viewHolder.tv3.setText(checkin_reasonST);
viewHolder.tv4.setText(stationST);
viewHolder.tv5.setText(buST);
viewHolder.tv6.setText(agingDayST);
viewHolder.tv7.setText(checkinDateST);
viewHolder.tv8.setText(checkoutDateST);
viewHolder.tv9.setText(SNSST);
viewHolder.tv10.setText(ownST);
viewHolder.tv11.setText(creatST);
viewHolder.tv12.setText(checkinST);
}catch (Exception e){
e.printStackTrace();
}
return convertView;
}
}