package com.ecollege.android; import java.util.List; import roboguice.inject.InjectView; import android.content.Context; import android.content.SharedPreferences; import android.os.Bundle; import android.text.Html; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.Button; import android.widget.TextView; import com.ecollege.android.activities.ECollegeListActivity; import com.ecollege.android.adapter.UberAdapter; import com.ecollege.android.adapter.UberItem; import com.ecollege.api.ECollegeClient; import com.ecollege.api.model.Course; import com.google.inject.Inject; public class ProfileActivity extends ECollegeListActivity { @InjectView(R.id.name_text) TextView nameText; @InjectView(R.id.sign_out_button) Button signOutButton; @Inject ECollegeApplication app; @Inject SharedPreferences prefs; protected ECollegeClient client; private CourseArrayAdapter courseAdapter; private List<Course> courses; public LayoutInflater viewInflater; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.profile); client = app.getClient(); courses = app.getCurrentCourseList(); viewInflater = getLayoutInflater(); nameText.setText(app.getCurrentUser().getFirstName() + " " + app.getCurrentUser().getLastName()); signOutButton.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { signOut(); } }); courseAdapter = new CourseArrayAdapter(this); courseAdapter.updateItems(courses); setListAdapter(courseAdapter); } protected void signOut() { app.logout(); } protected class CourseViewHolder { public TextView courseTitleText; public TextView courseDescriptionText; } protected class CourseArrayAdapter extends UberAdapter<Course> { public CourseArrayAdapter(Context context) { super(context, false, false, false); } @Override public boolean areAllItemsEnabled() { return false; } @Override public boolean isEnabled(int position) { return false; } @Override protected View getDataItemView(View convertView, ViewGroup parent, UberItem<Course> item) { CourseViewHolder holder; if (convertView == null) { convertView = viewInflater.inflate(R.layout.simple_course_list_item, null); holder = new CourseViewHolder(); holder.courseTitleText = (TextView) convertView.findViewById(R.id.course_title); holder.courseDescriptionText = (TextView) convertView.findViewById(R.id.course_code_text); convertView.setTag(holder); } else { holder = (CourseViewHolder) convertView.getTag(); } Course course = item.getDataItem(); holder.courseTitleText.setText(Html.fromHtml(course.getTitle())); holder.courseDescriptionText.setText(course.getDisplayCourseCode()); return convertView; } } }