package com.oc.mobilsecurity;
import java.util.ArrayList;
import java.util.HashMap;
import com.oc.mobilsecurity.about.AboutFragment;
import com.oc.mobilsecurity.application.ApplicationFragment;
import com.oc.mobilsecurity.data.UserData;
import com.oc.mobilsecurity.personinfo.*;
import android.os.Bundle;
import android.app.Fragment;
import android.app.FragmentTransaction;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.Button;
import android.widget.ListView;
import android.widget.SimpleAdapter;
public class MenuFragment extends Fragment {
private ListView list;
private ArrayList<HashMap<String, Object>> listItem;
private Button exitButton;
private UserData userData = UserData.getInstance();
private String[] titles = {
PreferenceValue.menuApplication,
PreferenceValue.menuPersoninfo,
PreferenceValue.menuSetting,
PreferenceValue.menuAbout };
int resIds = R.drawable.blue_circle;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setRetainInstance(true);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// inflater the layout
View view = inflater.inflate(R.layout.menu, null);
list = (ListView) view.findViewById(R.id.menu_list);
listItem = new ArrayList<HashMap<String, Object>>();
for (int i = 0; i < 4; i++) {
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("menuListItemTitle", titles[i]);
map.put("menuListItemImage", resIds);
listItem.add(map);
}
// ������������Item�Ͷ�̬�����Ӧ��Ԫ��
SimpleAdapter listItemAdapter = new SimpleAdapter(
getActivity().getBaseContext(),
listItem,
R.layout.list_menu,
new String[] { "menuListItemImage", "menuListItemTitle" },
new int[] { R.id.menuListItemImage, R.id.menuListItemTitle });
// ��Ӳ�����ʾ
list.setAdapter(listItemAdapter);
list.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
FragmentTransaction fragmentTransaction = ((MainActivity) getActivity())
.getFragmentManager().beginTransaction();
if (listItem.get(arg2).containsValue(PreferenceValue.menuApplication)) {
if (MainActivity.FragmentNo != 1) {
fragmentTransaction.replace(R.id.main,
new ApplicationFragment());
fragmentTransaction.commit();
}
} else if (listItem.get(arg2).containsValue(PreferenceValue.menuPersoninfo)) {
if (MainActivity.FragmentNo != 2) {
fragmentTransaction.replace(R.id.main,
new PersonInfoFragment());
fragmentTransaction.commit();
}
} else if (listItem.get(arg2).containsValue(PreferenceValue.menuSetting)) {
if (MainActivity.FragmentNo != 3) {
}
} else {
if (MainActivity.FragmentNo != 4) {
fragmentTransaction.replace(R.id.main,
new AboutFragment());
fragmentTransaction.commit();
}
}
((MainActivity) getActivity()).getSlidingMenu().toggle();
}
});
exitButton = (Button) view.findViewById(R.id.exitButton);
exitButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
userData.clearAll();
((MainActivity) getActivity()).finish();
}
});
return view;
}
}