@Override public boolean onLongClick(View v) { boolean handled = true; switch (v.getId()) { case R.id.theme_top_image: v.setOnCreateContextMenuListener( new View.OnCreateContextMenuListener() { @Override public void onCreateContextMenu( ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) { MenuInflater inflater = getActivity().getMenuInflater(); inflater.inflate(R.menu.background_ctx_menu, menu); menu.findItem(R.id.menu_change_background) .setOnMenuItemClickListener( new MenuItem.OnMenuItemClickListener() { @Override public boolean onMenuItemClick(MenuItem item) { UILauncher.launchFragmentInNewActivity( getActivity(), UserBgSelectFragment.class, null); return true; } }); } }); v.showContextMenu(); v.setOnCreateContextMenuListener(null); break; default: handled = false; break; } return handled; }
@Override public View getView(int position, View convertView, ViewGroup parent) { if (convertView != null) { mListViewHolder = (ActivityEventListViewHolder) convertView.getTag(); } else { convertView = mInflater.inflate(mResourceId, null); mListViewHolder = new ActivityEventListViewHolder(); mListViewHolder.StartTime = (TextView) convertView.findViewById(mValueViewID[1]); mListViewHolder.ActivityEventName = (TextView) convertView.findViewById(mValueViewID[0]); mListViewHolder.EventDuration = (TextView) convertView.findViewById(mValueViewID[2]); mListViewHolder.Stop = (ImageButton) convertView.findViewById(mValueViewID[3]); convertView.setTag(mListViewHolder); } HashMap<String, Object> appInfo = mAppList.get(position); final int order = position; if (appInfo != null) { mListViewHolder.StartTime.setText(String.valueOf(appInfo.get(mKeyString[1]))); mListViewHolder.ActivityEventName.setText(String.valueOf(appInfo.get(mKeyString[0]))); mListViewHolder.EventDuration.setText(String.valueOf(appInfo.get(mKeyString[2]))); mListViewHolder.Stop.setOnClickListener( new OnClickListener() { public void onClick(View v) { if (mListener != null) mListener.onStopButtonClick(order); } }); } convertView.setOnCreateContextMenuListener(this); return convertView; }
public void unregisterViews() { for (View view : mViews.values()) { if (view != null) { view.setOnCreateContextMenuListener(null); } } mViews.clear(); }
@Override public View getView(int position, View convertView, ViewGroup parent) { // TODO Auto-generated method stub ViewHolder holder; if (convertView == null) { convertView = inflater.inflate(R.layout.message_list_item, null); holder = new ViewHolder(); holder.icon = (ImageView) convertView.findViewById(R.id.recent_userhead); holder.name = (TextView) convertView.findViewById(R.id.recent_name); holder.date = (TextView) convertView.findViewById(R.id.recent_time); holder.msg = (TextView) convertView.findViewById(R.id.recent_msg); convertView.setTag(holder); } else { holder = (ViewHolder) convertView.getTag(); } final KFChatEntity entity = list.get(position); KFSLog.d("conv.id " + entity.getId() + " conv.name:" + entity.getName()); // 首先获取昵称,如果昵称未设置,则显示对方用户名 if (entity.isSend() == 1) // 自己发送的消息 { holder.name.setText("自己发送的消息"); // 设置自己的头像 updateVCardThread(KFSettingsManager.getSettingsManager(context).getUsername(), holder.icon); } else { // 收到对方的消息 String nickname = KFIMInterfaces.getOtherNickname(entity.getName()); if (nickname == null) { nickname = entity.getName(); } holder.name.setText("收到来自:" + nickname + "的消息"); // 设置对方的头像 updateVCardThread(entity.getName(), holder.icon); } holder.name.setTextColor(Color.BLACK); holder.date.setText(entity.getDate()); holder.msg.setText("消息ID:" + entity.getId() + " 消息内容:" + entity.getText()); convertView.setOnCreateContextMenuListener( new OnCreateContextMenuListener() { @Override public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) { // TODO Auto-generated method stub Log.d(TAG, "setOnCreateContextMenuListener"); } }); return convertView; }
public ViewHolder(View v) { super(v); mView = v; ivComics = (ImageView) v.findViewById(R.id.ivComics); tvPubDate = (TextView) v.findViewById(R.id.tvBashItemPubDate); ivFavorite = (ImageView) v.findViewById(R.id.ivFavorite); tvText = (TextView) v.findViewById(R.id.tvBashItemText); tvTitle = (TextView) v.findViewById(R.id.tvBashItemTitle); mContextMenuListener = new ContextMenuListener(getContext(), false); v.setOnCreateContextMenuListener(mContextMenuListener); }
/** * Creates a ViewHolder from a View. * * @param v the view. */ public PhotoViewHolder(View v) { super(v); vPhoto = (ImageView) v.findViewById(R.id.imageViewPhoto); vDate = (TextView) v.findViewById(R.id.textViewDate); vDescription = (TextView) v.findViewById(R.id.textViewDescription); vVoteThumbsUp = (ImageButton) v.findViewById(R.id.imageButtonThumbsUp); vVoteThumbsDown = (ImageButton) v.findViewById(R.id.imageButtonThumbsDown); vSetWallpaper = (ImageButton) v.findViewById(R.id.imageButtonWallpaper); vEdit = (ImageButton) v.findViewById(R.id.imageButtonEdit); vDelete = (ImageButton) v.findViewById(R.id.imageButtonDelete); v.setOnCreateContextMenuListener(this); }
public CommentViewHolder(View v, Context context, ICommentableFragment fragment) { super(v); this.fragment = fragment; this.context = context; commentAuthor = (TextView) v.findViewById(R.id.user); commentTime = (TextView) v.findViewById(R.id.time); commentContent = (TextView) v.findViewById(R.id.content); commentContent.setMovementMethod(LinkMovementMethod.getInstance()); commentMarker = v.findViewById(R.id.comment_marker); commentIndent = v.findViewById(R.id.comment_indent); commentImage = (ImageView) v.findViewById(R.id.author_avatar); v.setOnCreateContextMenuListener(this); }
/** * Starts showing a context menu for {@code view} based on {@code params}. * * @param contentViewCore The {@link ContentViewCore} to show the menu to. * @param params The {@link ContextMenuParams} that indicate what menu items to show. */ @CalledByNative private void showContextMenu(ContentViewCore contentViewCore, ContextMenuParams params) { final View view = contentViewCore.getContainerView(); if (!shouldShowMenu(params) || view == null || view.getVisibility() != View.VISIBLE || view.getParent() == null) { return; } mCurrentContextMenuParams = params; view.performHapticFeedback(HapticFeedbackConstants.LONG_PRESS); view.setOnCreateContextMenuListener(this); view.showContextMenu(); }
@Override public boolean onInterceptTouchEvent(MotionEvent ev) { if (isDrawerOpen(Gravity.RIGHT)) { for (Long convoId : mViews.keySet()) { View view = mViews.get(convoId); if (view != null) { if (view.isShown()) { if (isPointInsideView(ev.getRawX(), ev.getRawY(), view)) { return false; } } else { view.setOnCreateContextMenuListener(null); } } } } try { return super.onInterceptTouchEvent(ev); // && shouldIntercept(); } catch (Exception e) { return false; } }
@Override public View getView(int position, View convertView, ViewGroup parent) { dbAdapter.open(); View vi = convertView; ViewHolder holder; Episode episode = episodes.get(position); int type = getItemWatchedType(episode.ID); if (convertView == null) { holder = new ViewHolder(); vi = inflater.inflate(R.layout.season_episode_item, null); holder.itemRow = (RelativeLayout) vi.findViewById(R.id.episode_row); holder.title = (TextView) vi.findViewById(R.id.episode_title); holder.image = (ImageView) vi.findViewById(R.id.episode_image); holder.episodeSeasonNumber = (TextView) vi.findViewById(R.id.episode_season_number); holder.firstAired = (TextView) vi.findViewById(R.id.episode_airdate); holder.clock = (ImageView) vi.findViewById(R.id.episode_clock); holder.watchedBtn = (CheckBox) vi.findViewById(R.id.season_episode_checkbox); holder.watchedBtn.setOnClickListener(this); holder.watchedBtn.setTag(position); vi.setTag(holder); vi.setOnCreateContextMenuListener(this); vi.setOnClickListener(this); } else { holder = (ViewHolder) vi.getTag(); ((ViewHolder) vi.getTag()).watchedBtn.setTag(position); } holder.title.setTag(position); holder.title.setText(episode.TITLE); // Log.d("SeasonAdapter", episode.IMAGE_URL); // Season number and episode number i.e. 'S01E10' String s = episode.SEASON_NUMBER < 10 ? "0" + episode.SEASON_NUMBER : episode.SEASON_NUMBER + ""; String e = episode.EPISODE_NUMBER < 10 ? "0" + episode.EPISODE_NUMBER : episode.EPISODE_NUMBER + ""; holder.episodeSeasonNumber.setText("S" + s + "E" + e); // Reminder Clock Calendar currentTime = Calendar.getInstance(); currentTime.add(Calendar.DAY_OF_MONTH, -1); Calendar episodeTime = getDate(episode); holder.clock.setImageResource( episodeTime == null ? R.drawable.clock_null : (getDate(episode).after(currentTime) ? R.drawable.clock : R.drawable.clock_null)); // CheckBox holder.watchedBtn.setClickable(dbAdapter.isSeriesFavorited(episode.SERIES_ID)); switch (type) { case TYPE_WATCHED: holder.watchedBtn.setChecked(true); break; case TYPE_NOT_WATCHED: holder.watchedBtn.setChecked(false); break; } holder.firstAired.setText(dateFormat(episode.FIRST_AIRED)); /** Image Stuff */ String imgUri = ServerUrls.getImageUrl(activity, ServerUrls.fixURL(episode.IMAGE_URL)); if (!MemoryCacheUtil.findCachedBitmapsForImageUri(imgUri, imageLoader.getMemoryCache()) .isEmpty()) { imageLoader.displayImage(imgUri, holder.image, this.optionsWithoutDelay); } else { imageLoader.displayImage(imgUri, holder.image, this.optionsWithDelay); } dbAdapter.close(); return vi; }
/** @see Activity#unregisterForContextMenu(View) */ public void unregisterForContextMenu(View view) { view.setOnCreateContextMenuListener(null); }
/** @see Activity#registerForContextMenu(View) */ public void registerForContextMenu(View view) { view.setOnCreateContextMenuListener(this); }
public View getView(final int i, View convertView, ViewGroup viewgroup) { final ShoppingItem item = items.get(i); View view = inflater.inflate(R.layout.item_view, null); TextView priceView = (TextView) view.findViewById(R.id.price); TextView rankView = (TextView) view.findViewById(R.id.rank); TextView quantityView = (TextView) view.findViewById(R.id.quantity); TextView ratioView = (TextView) view.findViewById(R.id.ratio); CheckBox enabledBox = (CheckBox) view.findViewById(R.id.enabled); NumberFormat format = NumberFormat.getCurrencyInstance(); priceView.setText(format.format(item.getPrice())); quantityView.setText(item.getQuantity().toString()); enabledBox.setChecked(item.isEnabled()); if (item.isEnabled()) { try { int rank = ranker.getRank(item); if ((rank > 0) && (rank <= rankName.length)) { rankView.setText(rankName[rank - 1]); if (rank <= 3) { rankView.setTextColor(Color.rgb(0, 153, 0)); // dark green } } if (rank > 1) { ratioView.setText("+" + numberFormat.format(ranker.getRatioToBestPrice(item) - 1)); } } catch (UncomparableUnitException e) { rankView.setText(R.string.uncomparable); rankView.setTextColor(Color.RED); } } else { priceView.setEnabled(false); } enabledBox.setOnCheckedChangeListener( new OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton button, boolean isChecked) { item.setEnabled(isChecked); notifyItemUpdated(); } }); view.setOnClickListener( new OnClickListener() { @Override public void onClick(View paramView) { startEditItemActivity(i); } }); view.setOnCreateContextMenuListener( new OnCreateContextMenuListener() { @Override public void onCreateContextMenu(ContextMenu menu, View view, ContextMenuInfo menuInfo) { menu.add(Menu.NONE, i, MENU_DELETE, getString(R.string.delete_item)); } }); return view; }
/** Formats message as a View suitable for a conversation list */ private View oneMessageToView(ConversationOneMessage oMsg) { final String method = "oneMessageToView"; if (MyLog.isLoggable(this, MyLog.VERBOSE)) { MyLog.v( this, method + ": msgId=" + oMsg.msgId + (oMsg.avatarDrawable != null ? ", avatar=" + oMsg.avatarDrawable.getFileName() : "")); } LayoutInflater inflater = LayoutInflater.from(context); int layoutResource = R.layout.message_conversation; if (!Activity.class.isAssignableFrom(context.getClass())) { MyLog.w(this, "Context should be from an Activity"); } View messageView = inflater.inflate(layoutResource, null); messageView.setOnCreateContextMenuListener(contextMenu); float displayDensity = context.getResources().getDisplayMetrics().density; // See // http://stackoverflow.com/questions/2238883/what-is-the-correct-way-to-specify-dimensions-in-dip-from-java-code int indent0 = (int) (10 * displayDensity); int indentPixels = indent0 * oMsg.indentLevel; LinearLayout messageIndented = (LinearLayout) messageView.findViewById(R.id.message_indented); if (oMsg.msgId == selectedMessageId && oMsgs.size() > 1) { messageIndented.setBackgroundDrawable( context.getResources().getDrawable(R.drawable.message_current_background)); } int viewToTheLeftId = 0; if (oMsg.indentLevel > 0) { View divider = messageView.findViewById(R.id.divider); RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, 1); layoutParams.leftMargin = indentPixels - 4; divider.setLayoutParams(layoutParams); if (MyLog.isLoggable(this, MyLog.VERBOSE)) { MyLog.v(this, "density=" + displayDensity); } viewToTheLeftId = 2; ImageView indentView = new ConversationIndentImageView(context, messageIndented, indentPixels); indentView.setId(viewToTheLeftId); ((ViewGroup) messageIndented.getParent()).addView(indentView); } if (MyPreferences.showAvatars()) { ImageView avatarView = new ImageView(context); int size = Math.round(AvatarDrawable.AVATAR_SIZE_DIP * displayDensity); avatarView.setScaleType(ScaleType.FIT_CENTER); RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(size, size); layoutParams.topMargin = 3; if (oMsg.indentLevel > 0) { layoutParams.leftMargin = 1; } if (viewToTheLeftId == 0) { layoutParams.addRule(RelativeLayout.ALIGN_PARENT_LEFT, RelativeLayout.TRUE); } else { layoutParams.addRule(RelativeLayout.RIGHT_OF, viewToTheLeftId); } avatarView.setLayoutParams(layoutParams); avatarView.setImageDrawable(oMsg.avatarDrawable.getDrawable()); indentPixels += size; ((ViewGroup) messageIndented.getParent()).addView(avatarView); } messageIndented.setPadding(indentPixels + 6, 2, 6, 2); TextView id = (TextView) messageView.findViewById(R.id.id); id.setText(Long.toString(oMsg.msgId)); TextView linkedUserId = (TextView) messageView.findViewById(R.id.linked_user_id); linkedUserId.setText(Long.toString(oMsg.linkedUserId)); TextView author = (TextView) messageView.findViewById(R.id.message_author); TextView body = (TextView) messageView.findViewById(R.id.message_body); TextView details = (TextView) messageView.findViewById(R.id.message_details); author.setText(oMsg.author); TextView number = (TextView) messageView.findViewById(R.id.message_number); number.setText(Integer.toString(oMsg.historyOrder)); if (!TextUtils.isEmpty(oMsg.body)) { body.setLinksClickable(true); body.setMovementMethod(LinkMovementMethod.getInstance()); body.setFocusable(true); body.setFocusableInTouchMode(true); Spanned spanned = Html.fromHtml(oMsg.body); body.setText(spanned); if (!MbMessage.hasUrlSpans(spanned)) { Linkify.addLinks(body, Linkify.ALL); } } // Everything else goes to messageDetails String messageDetails = RelativeTime.getDifference(context, oMsg.createdDate); if (!SharedPreferencesUtil.isEmpty(oMsg.via)) { messageDetails += " " + String.format( MyContextHolder.get().getLocale(), context.getText(R.string.message_source_from).toString(), oMsg.via); } if (oMsg.inReplyToMsgId != 0) { String inReplyToName = oMsg.inReplyToName; if (SharedPreferencesUtil.isEmpty(inReplyToName)) { inReplyToName = "..."; } messageDetails += " " + String.format( MyContextHolder.get().getLocale(), context.getText(R.string.message_source_in_reply_to).toString(), oMsg.inReplyToName) + " (" + msgIdToHistoryOrder(oMsg.inReplyToMsgId) + ")"; } if (!SharedPreferencesUtil.isEmpty(oMsg.rebloggersString) && !oMsg.rebloggersString.equals(oMsg.author)) { if (!SharedPreferencesUtil.isEmpty(oMsg.inReplyToName)) { messageDetails += ";"; } messageDetails += " " + String.format( MyContextHolder.get().getLocale(), context .getText(ma.alternativeTermForResourceId(R.string.reblogged_by)) .toString(), oMsg.rebloggersString); } if (!SharedPreferencesUtil.isEmpty(oMsg.recipientName)) { messageDetails += " " + String.format( MyContextHolder.get().getLocale(), context.getText(R.string.message_source_to).toString(), oMsg.recipientName); } if (MyLog.isLoggable(this, MyLog.VERBOSE)) { messageDetails = messageDetails + " (i" + oMsg.indentLevel + ",r" + oMsg.replyLevel + ")"; } details.setText(messageDetails); ImageView favorited = (ImageView) messageView.findViewById(R.id.message_favorited); favorited.setImageResource( oMsg.favorited ? android.R.drawable.star_on : android.R.drawable.star_off); return messageView; }