Buggy code:
private Context mContext ; private LayoutInflater mInflater ; private ScaleAnimation mBravoScaleAnimation ; private ScaleAnimation mReplyScaleAnimation ; private RotateAnimation mRefreshAnimation ; private String mUid ; private String mAuthorName ; private MarrySocialDBHelper mDBHelper ; private ExecutorService mExecutorService ; private AsyncImageViewBitmapLoader mAsyncBitmapLoader ; private AsyncHeadPicBitmapLoader mHeadPicBitmapLoader ; private boolean mIsInContactsInfoActivity = false ; private ArrayList < CommentsItem > mCommentsData = new ArrayList < CommentsItem > ( ) ; private HashMap < String , String > mBravoEntrys = new HashMap < String , String > ( ) ; private HashMap < String , ArrayList < ReplysItem > > mReplyEntrys = new HashMap < String , ArrayList < ReplysItem > > ( ) ; private HashMap < String , ContactsInfo > mUserInfoEntrys = new HashMap < String , ContactsInfo > ( ) ; private DynamicInfoListAdapter . onReplyBtnClickedListener mReplyBtnClickedListener ; public static interface onReplyBtnClickedListener { public void onReplyBtnClicked ( int position ) { } } public void setReplyBtnClickedListener ( DynamicInfoListAdapter . onReplyBtnClickedListener listener ) { } public DynamicInfoListAdapter ( Context context ) { } public void setCommentDataSource ( ArrayList < CommentsItem > source ) { } public void setBravoDataSource ( HashMap < String , String > source ) { } public void setReplyDataSource ( HashMap < String , ArrayList < ReplysItem > > source ) { } public void setUserInfoDataSource ( HashMap < String , ContactsInfo > source ) { } public void setEnterInContactsInfoActivity ( boolean status ) { } public void clearHeadPicsCache ( ) { } @ Override public int getCount ( ) { } @ Override public Object getItem ( int position ) { } @ Override public long getItemId ( int position ) { } @ Override public View getView ( int position , View convertView , ViewGroup parent ) { } private void setViewHolderLoyout ( final DynamicInfoListAdapter . ViewHolder holder , final int position ) { holder . mNickName . setText ( mCommentsData . get ( position ) . getNickName ( ) ) ; holder . mDynamicBravo . setEnabled ( ( ! ( INVALID_STR . equalsIgnoreCase ( mCommentsData . get ( position ) . getCommentId ( ) ) ) ) ) ; holder . mDynamicBravo . setChecked ( mCommentsData . get ( position ) . isBravo ( ) ) ; holder . mDynamicBravo . setOnClickListener ( new OnClickListener ( ) { @ Override public void onClick ( View v ) { holder . mDynamicBravo . startAnimation ( mBravoScaleAnimation ) ; mExecutorService . execute ( new DynamicInfoListAdapter . UpdateBravoStatus ( mCommentsData . get ( position ) , holder . mDynamicBravo . isChecked ( ) ) ) ; } } ) ; holder . mReplyBtn . setEnabled ( ( ! ( INVALID_STR . equalsIgnoreCase ( mCommentsData . get ( position ) . getCommentId ( ) ) ) ) ) ; holder . mReplyBtn . setOnClickListener ( new OnClickListener ( ) { @ Override public void onClick ( View v ) { holder . mReplyBtn . startAnimation ( mReplyScaleAnimation ) ; mReplyBtnClickedListener . onReplyBtnClicked ( position ) ; } } ) ; holder . mRefreshBtn . clearAnimation ( ) ; holder . mRefreshBtn . setVisibility ( GONE ) ; if ( ( ( mCommentsData . get ( position ) . getCurrrentStatus ( ) ) == ( MarrySocialDBHelper . NEED_UPLOAD_TO_CLOUD ) ) || ( ( mCommentsData . get ( position ) . getCurrrentStatus ( ) ) == ( MarrySocialDBHelper . UPLOAD_TO_CLOUD_FAIL ) ) ) { holder . mRefreshBtn . setVisibility ( VISIBLE ) ; holder . mRefreshBtn . setOnClickListener ( new OnClickListener ( ) { @ Override public void onClick ( View v ) { holder . mRefreshBtn . startAnimation ( mRefreshAnimation ) ; uploadCommentsToCloud ( KEY_COMMENTS , mCommentsData . get ( position ) . getBucketId ( ) ) ; } } ) ; } holder . mReplyTipsTitle . setOnClickListener ( new OnClickListener ( ) { @ Override public void onClick ( View v ) { showAllReplys ( position ) ; } } ) ; holder . mAddedTime . setText ( mCommentsData . get ( position ) . getAddTime ( ) ) ; holder . mContents . setText ( mCommentsData . get ( position ) . getContents ( ) ) ; if ( ( mIsInContactsInfoActivity ) || ( mUid . equalsIgnoreCase ( mCommentsData . get ( position ) . getUid ( ) ) ) ) { holder . mDynamicInfoFriends . setVisibility ( INVISIBLE ) ; holder . mHeadPic . setClickable ( false ) ; holder . mNickName . setClickable ( false ) ; } else { holder . mDynamicInfoFriends . setVisibility ( VISIBLE ) ; <START_BUG> holder . mDynamicInfoFriends . setText ( String . format ( mContext . getResources ( ) . getString ( contacts_detail ) , mUserInfoEntrys . get ( mCommentsData . get ( position ) . getUid ( ) ) . getFirstDirectFriend ( ) ) ) ; <END_BUG> holder . mHeadPic . setClickable ( true ) ; holder . mNickName . setClickable ( true ) ; holder . mHeadPic . setOnClickListener ( new OnClickListener ( ) { @ Override public void onClick ( View view ) { startToViewContactsInfo ( mCommentsData . get ( position ) . getUid ( ) ) ; } } ) ; holder . mNickName . setOnClickListener ( new OnClickListener ( ) { @ Override public void onClick ( View arg0 ) { startToViewContactsInfo ( mCommentsData . get ( position ) . getUid ( ) ) ; } } ) ; } mHeadPicBitmapLoader . loadImageBitmap ( holder . mHeadPic , mCommentsData . get ( position ) . getUid ( ) ) ; setCommentPicsVisibleIfNeed ( holder , position ) ; setCommentPicsOnClickListener ( holder , position ) ; setBravosVisibleIfNeed ( holder , position ) ; setReplysVisibleIfNeed ( holder , position ) ; holder . mDynamicBravo . clearAnimation ( ) ; holder . mReplyBtn . clearAnimation ( ) ; } class ViewHolder { RoundedImageView mHeadPic ; CheckBox mDynamicBravo ; ImageView mReplyBtn ; ImageView mRefreshBtn ; TextView mNickName ; TextView mAddedTime ; TextView mContents ; TextView mBravosAuthorNames ; TextView mDynamicInfoFriends ; ImageView mCommentPics01 ; ImageView mCommentPics02 ; ImageView mCommentPics03 ; ImageView mCommentPics04 ;

Fix:
holder . mDynamicInfoFriends . setText ( String . format ( mContext . getResources ( ) . getString ( contacts_detail_more ) , mUserInfoEntrys . get ( mCommentsData . get ( position ) . getUid ( ) ) . getFirstDirectFriend ( ) ) ) ;