Android Open Source - mobile2-android Response Adapter






From Project

Back to project page mobile2-android.

License

The source code is released under:

Apache License

If you think the Android project mobile2-android listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package com.ecollege.android.adapter;
/*from   w w  w  .  java  2  s  .c o m*/
import android.app.Activity;
import android.content.Context;
import android.text.Html;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;

import com.ecollege.android.R;
import com.ecollege.android.view.helpers.ResponseCountViewHelper;
import com.ecollege.api.model.DiscussionResponse;
import com.ecollege.api.model.ResponseCount;
import com.ecollege.api.model.User;
import com.ecollege.api.model.UserDiscussionResponse;
import com.ocpsoft.pretty.time.PrettyTime;

public class ResponseAdapter extends UberAdapter<UserDiscussionResponse> {
  
  final private class ViewHolder {
        ImageView icon;
        TextView titleText;
        TextView authorText;
        ImageView authorIcon;
        TextView timeText;
        TextView totalResponseCountText;
        TextView unreadResponseCountText;
        TextView userResponseCountText;
        TextView descriptionText;
    }

  final private PrettyTime prettyTimeFormatter = new PrettyTime();
  
  protected boolean loading;
  
  public ResponseAdapter(Context context) {
    super(context,false,false,false);
  }
  
  
  @Override
  protected View getDataItemView(View convertView, ViewGroup parent,
      UberItem<UserDiscussionResponse> item) {
    ViewHolder holder;
    
    LayoutInflater viewInflater = ((Activity)context).getLayoutInflater();
    
    if (convertView == null) {
      convertView = viewInflater.inflate(R.layout.user_topic_item, null);
      
      holder = new ViewHolder();
      holder.icon = (ImageView) convertView.findViewById(R.id.icon);
      holder.titleText = (TextView) convertView.findViewById(R.id.title_text);
      holder.timeText = (TextView) convertView.findViewById(R.id.time_text);
      holder.authorText = (TextView) convertView.findViewById(R.id.author_text);
      holder.authorIcon = (ImageView) convertView.findViewById(R.id.author_icon);
      holder.descriptionText = (TextView) convertView.findViewById(R.id.description_text);
      holder.totalResponseCountText = (TextView) convertView.findViewById(R.id.total_response_count_text);
      holder.unreadResponseCountText = (TextView) convertView.findViewById(R.id.unread_response_count_text);
      holder.userResponseCountText = (TextView) convertView.findViewById(R.id.user_response_count_text);
      convertView.setTag(holder);
    } else {
      holder = (ViewHolder) convertView.getTag();
    }
    
    UserDiscussionResponse userResponse = item.getDataItem();
    DiscussionResponse response = userResponse.getResponse();
    ResponseCount responseCount = userResponse.getChildResponseCounts();
    User author = response.getAuthor();
    
    holder.timeText.setVisibility(View.VISIBLE);
    holder.authorText.setVisibility(View.VISIBLE);
    holder.authorIcon.setVisibility(View.VISIBLE);
    holder.descriptionText.setVisibility(View.VISIBLE);
    
    holder.titleText.setText(Html.fromHtml(response.getTitle()).toString());
    holder.authorText.setText(author.getFirstName() + " " + author.getLastName());
    holder.descriptionText.setText(Html.fromHtml(response.getDescription()));
    holder.timeText.setText(prettyTimeFormatter.format(response.getPostedDate().getTime()));
    ResponseCountViewHelper responseCountViewHelper = new ResponseCountViewHelper(context,
        holder.icon,
        holder.unreadResponseCountText,
        holder.totalResponseCountText,
        holder.userResponseCountText
    );
    responseCountViewHelper.setResponseCount(responseCount);
    return convertView;    
  }

  
}




Java Source Code List

com.ecollege.android.AnnouncementActivity.java
com.ecollege.android.CourseActivity.java
com.ecollege.android.CourseAnnouncementsActivity.java
com.ecollege.android.CourseDiscussionsActivity.java
com.ecollege.android.CourseGradebookActivity.java
com.ecollege.android.CoursePeopleActivity.java
com.ecollege.android.CourseThreadActivity.java
com.ecollege.android.CoursesActivity.java
com.ecollege.android.DiscussionsActivity.java
com.ecollege.android.DropboxMessageActivity.java
com.ecollege.android.ECollegeApplication.java
com.ecollege.android.GradeActivity.java
com.ecollege.android.HomeActivity.java
com.ecollege.android.HtmlContentActivity.java
com.ecollege.android.LoginActivity.java
com.ecollege.android.MainActivity.java
com.ecollege.android.PersonActivity.java
com.ecollege.android.ProfileActivity.java
com.ecollege.android.SingleSignonActivity.java
com.ecollege.android.SplashActivity.java
com.ecollege.android.UserDiscussionActivity.java
com.ecollege.android.UserResponseActivity.java
com.ecollege.android.UserTopicActivity.java
com.ecollege.android.activities.ECollegeActivityHelper.java
com.ecollege.android.activities.ECollegeActivity.java
com.ecollege.android.activities.ECollegeDefaultActivity.java
com.ecollege.android.activities.ECollegeListActivity.java
com.ecollege.android.activities.ECollegeTabActivity.java
com.ecollege.android.adapter.ActivityFeedAdapter.java
com.ecollege.android.adapter.GroupedAdapter.java
com.ecollege.android.adapter.LoadMoreAdapter.java
com.ecollege.android.adapter.ParentAdapterObserver.java
com.ecollege.android.adapter.ResponseAdapter.java
com.ecollege.android.adapter.TopicsAdapter.java
com.ecollege.android.adapter.UberAdapter.java
com.ecollege.android.adapter.UberItem.java
com.ecollege.android.adapter.UpcomingEventsAdapter.java
com.ecollege.android.adapter.WaitingForApiAdapter.java
com.ecollege.android.errors.ECollegeAlertException.java
com.ecollege.android.errors.ECollegeException.java
com.ecollege.android.errors.ECollegePromptException.java
com.ecollege.android.errors.ECollegePromptRetryException.java
com.ecollege.android.tasks.ECollegeAsyncTask.java
com.ecollege.android.tasks.ServiceCallTask.java
com.ecollege.android.tasks.TaskPostProcessor.java
com.ecollege.android.util.CacheConfiguration.java
com.ecollege.android.util.DateTimeUtil.java
com.ecollege.android.util.FileCacheManager.java
com.ecollege.android.util.VolatileCacheManager.java
com.ecollege.android.view.HeaderView.java
com.ecollege.android.view.helpers.ResponseCountViewHelper.java