package com.oc.mobilsecurity.application; import java.util.ArrayList; import java.util.HashMap; import com.oc.mobilsecurity.MainActivity; import com.oc.mobilsecurity.PreferenceValue; import com.oc.mobilsecurity.R; import com.oc.mobilsecurity.Run; import com.oc.mobilsecurity.data.UserData; import android.os.AsyncTask; import android.os.Bundle; import android.app.Activity; import android.app.Fragment; import android.app.ProgressDialog; import android.content.Intent; import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.ListView; import android.widget.SimpleAdapter; import android.widget.TextView; import android.widget.Toast; public class ApplicationFragment extends Fragment { private ListView list; private Activity mActivity; private Run run; private ProgressDialog pd; private TextView Name; private TextView Device; private TextView LastLogin; private PayTask payTask = null; private String[] titles = { "��־", "�˺Ź���", "֧������", "��Ӹ���" }; private String[] texts = { "�鿴������ʲô", "��������˺�����", "�������������֧��", "�����Ӧ�õȴ�����" }; int[] resIds = { R.drawable.yellow_circle, R.drawable.green_circle, R.drawable.orange_circle, R.drawable.purple_circle }; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setRetainInstance(true); MainActivity.FragmentNo = 1; } @Override public void onAttach(Activity activity) { super.onAttach(activity); mActivity = activity; } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.application, null); Name = (TextView) view.findViewById(R.id.frag_app_name); Name.setText(UserData.getInstance().getUserInformation().getUName()); Device = (TextView) view.findViewById(R.id.frag_app_device); Device.setText(UserData.getInstance().getMoblileInformation().getDeviceCount() + " ̨�豸"); LastLogin = (TextView) view.findViewById(R.id.frag_app_log); LastLogin.setText(UserData.getInstance().getApplicationData().getLastLogin()); run = new Run(mActivity); list = (ListView) view.findViewById(R.id.application_list); ArrayList<HashMap<String, Object>> listItem = new ArrayList<HashMap<String, Object>>(); for (int i = 0; i < 4; i++) { HashMap<String, Object> map = new HashMap<String, Object>(); map.put("appListItemImage", resIds[i]); map.put("appListItemTitle", titles[i]); map.put("appListItemText", texts[i]); listItem.add(map); } // ������������Item�Ͷ�̬�����Ӧ��Ԫ�� SimpleAdapter listItemAdapter = new SimpleAdapter(getActivity() .getBaseContext(), listItem, R.layout.list_application, new String[] { "appListItemImage", "appListItemTitle", "appListItemText" }, new int[] { R.id.appListItemImage, R.id.actionTitle, R.id.actionTime }); // ��Ӳ�����ʾ list.setAdapter(listItemAdapter); list.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) { Intent intent = new Intent(); switch (arg2) { case 0: intent.setClass((MainActivity) getActivity(), ApplicationLog.class); startActivityForResult(intent, PreferenceValue.FRAGAPPLOG); break; case 1: intent.setClass((MainActivity) getActivity(), ApplicationAccount.class); startActivityForResult(intent, PreferenceValue.FRAGAPPACCO); break; case 2: if (payTask != null) { return; } showProgress(true); payTask = new PayTask(); payTask.execute((Void) null); break; case 3: Toast.makeText((MainActivity) getActivity(), "�����ڴ���", Toast.LENGTH_SHORT).show(); break; } } }); return view; } /** * Shows the progress UI and hides the login form. */ private void showProgress(final boolean show) { if (show) { pd = ProgressDialog.show((MainActivity) getActivity(), "֧��", "��֤�У����Ժ󡭡�"); } else { pd.dismiss(); } } /** * Represents an asynchronous login task used to authenticate the user. */ public class PayTask extends AsyncTask<Void, Void, Boolean> { @Override protected Boolean doInBackground(Void... params) { Log.v("TAG", "PAY!"); return run.pay(); } @Override protected void onPostExecute(final Boolean success) { Log.v("TAG", "PAY!PAY!"); payTask = null; showProgress(false); if (success) { Toast.makeText((MainActivity) getActivity(), "֧��ͨ����", Toast.LENGTH_SHORT).show(); } else { Toast.makeText((MainActivity) getActivity(), "֧��ʧ�ܣ�", Toast.LENGTH_SHORT).show(); } } @Override protected void onCancelled() { payTask = null; showProgress(false); } } }