@Override
protected
void
onCreate(Bundle savedInstanceState) {
super
.onCreate(savedInstanceState);
setContentView(R.layout.mileage_menu);
handler =
new
Handler();
m_groups =
new
ArrayList<Mileagelist>();
m_adapter =
new
MileageAdapter(MileageMenu.
this
,R.layout.mileage_list_detail, m_groups);
total_list.setAdapter(m_adapter);
viewGroups =
new
Runnable(){
@Override
public
void
run() {
getMailagelist();
}
};
Thread thread =
new
Thread(
null
, viewGroups,
"MagentoBackground"
);
thread.start();
}
public
class
MileageAdapter
extends
ArrayAdapter<Mileagelist> {
private
ArrayList<Mileagelist> items;
public
MileageAdapter(Context context,
int
textViewResourceId, ArrayList<Mileagelist> items) {
super
(context, textViewResourceId, items);
this
.items = items;
}
public
View getView(
final
int
position, View convertView, ViewGroup parent) {
DevLog.i(
"MileageAdapter.getView"
,
"position:"
+position);
View v = convertView;
final
Mileagelist m = items.get(position);
final
ViewHolder holder;
if
(v ==
null
) {
LayoutInflater vi = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
v = vi.inflate(R.layout.mileage_list_detail,
null
);
holder =
new
ViewHolder();
holder.t_date = (TextView) v.findViewById(R.id.t_mileage_date);
holder.t_dep = (TextView) v.findViewById(R.id.t_mileage_dep);
holder.t_msg = (TextView) v.findViewById(R.id.t_mileage_msg);
holder.t_total = (TextView) v.findViewById(R.id.t_mileage_total);
v.setTag(holder);
}
else
{
holder = (ViewHolder)v.getTag();
}
if
(m !=
null
) {
String date = m.getDate().substring(
2
, m.getDate().length()-
3
);
holder.t_date.setText(date);
if
(!m.getDep().equals(
""
)){
holder.t_dep.setText(m.getDep()+
"원"
);
}
else
{
holder.t_dep.setText(m.getExp()+
"원"
);
}
holder.t_msg.setText(m.getMsg());
holder.t_total.setText(m.getTotal()+
"원"
);
}
return
v;
}
}
private
void
getMailagelist(){
PhoneNumberMgr pMgr =
new
PhoneNumberMgr(MileageMenu.
this
);
String cur_phone = pMgr.phone_1+
"-"
+pMgr.phone_2+
"-"
+pMgr.phone_3;
r_groups =
new
ArrayList<Reclist>();
String[] key_names =
new
String[
6
];
key_names[
0
] =
"dep"
;
key_names[
1
] =
"exp"
;
key_names[
2
] =
"type"
;
key_names[
3
] =
"msg"
;
key_names[
4
] =
"date"
;
key_names[
5
] =
"total"
;
HashMap<String,ArrayList<String>> map = XmlParsingX.xmlParsingX(getResources().getString(R.string.custom_web_svr)
+
"select_mailage.php?phone="
+cur_phone,key_names);
ArrayList<String> deps = (ArrayList<String>)map.get(key_names[
0
]);
ArrayList<String> exps = (ArrayList<String>)map.get(key_names[
1
]);
ArrayList<String> types = (ArrayList<String>)map.get(key_names[
2
]);
ArrayList<String> msgs = (ArrayList<String>)map.get(key_names[
3
]);
ArrayList<String> dates = (ArrayList<String>)map.get(key_names[
4
]);
ArrayList<String> totals = (ArrayList<String>)map.get(key_names[
5
]);
for
(
int
i=
0
;i<dates.size();i++){
Mileagelist ml =
new
Mileagelist();
if
(deps.size() >=
1
&& deps.get(i)!=
null
){
ml.setDep(deps.get(i));
}
else
{
ml.setDep(
""
);
}
if
(exps.size() >=
1
&& exps.get(i) !=
null
){
ml.setExp(exps.get(i));
}
else
{
ml.setExp(
""
);
}
ml.setType(types.get(i));
ml.setMsg(msgs.get(i));
ml.setDate(dates.get(i));
ml.setTotal(totals.get(i));
m_groups.add(ml);
}
runOnUiThread(returnRes3);
}
private
Runnable returnRes3 =
new
Runnable() {
@Override
public
void
run() {
int
leng = m_groups.size();
DevLog.i(
"Runnable"
,
"mileage size : "
+ leng);
if
(m_groups !=
null
&& leng >
0
){
m_adapter.notifyDataSetChanged();
for
(
int
i=
0
;i<leng;i++){
progressVal++;
m_adapter.add(m_groups.get(i));
m_ProgressDialog.setProgress(progressVal);
}
}
m_ProgressDialog.dismiss();
m_adapter.notifyDataSetChanged();
}
};