@Override public View getView(int position, View convertView, ViewGroup parent) { View view = convertView; if (view == null) { LayoutInflater inflater = (LayoutInflater) getActivity().getSystemService(Context.LAYOUT_INFLATER_SERVICE); view = inflater.inflate(R.layout.listitem, null); } BaseListElement listElement = listElements.get(position); if (listElement != null) { view.setOnClickListener(listElement.getOnClickListener()); ImageView icon = (ImageView) view.findViewById(R.id.icon); TextView text1 = (TextView) view.findViewById(R.id.text1); TextView text2 = (TextView) view.findViewById(R.id.text2); if (icon != null) { icon.setImageDrawable(listElement.getIcon()); } if (text1 != null) { text1.setText(listElement.getText1()); } if (text2 != null) { text2.setText(listElement.getText2()); } } return view; }
@Override public void onSaveInstanceState(Bundle bundle) { super.onSaveInstanceState(bundle); for (BaseListElement listElement : listElements) { listElement.onSaveInstanceState(bundle); } uiHelper.onSaveInstanceState(bundle); }
@Override public View onCreateView( LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { super.onCreateView(inflater, container, savedInstanceState); View view = inflater.inflate(R.layout.selection, container, false); // Find the user's profile picture custom view profilePictureView = (ProfilePictureView) view.findViewById(R.id.selection_profile_pic); profilePictureView.setCropped(true); // Find the user's name view userNameView = (TextView) view.findViewById(R.id.selection_user_name); // Find the list view listView = (ListView) view.findViewById(R.id.selection_list); // Set up the list view items, based on a list of // BaseListElement items listElements = new ArrayList<BaseListElement>(); // Add an item for the friend picker listElements.add(new PeopleListElement(0)); // Set the list view adapter listView.setAdapter(new ActionListAdapter(getActivity(), R.id.selection_list, listElements)); if (savedInstanceState != null) { // Restore the state for each list element for (BaseListElement listElement : listElements) { listElement.restoreState(savedInstanceState); } } // Check for an open session Session session = Session.getActiveSession(); if (session != null && session.isOpened()) { // Get the user's data makeMeRequest(session); } return view; }