android.widget.TextView#getBackground ( )源码实例Demo

下面列出了android.widget.TextView#getBackground ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: HaoReader   文件: ChoiceBookActivity.java
@Override
public View getView(int position, View convertView, ViewGroup parent) {
    if (convertView == null) {
        convertView = View.inflate(context, R.layout.item_choice_book_category, null);
    }
    TextView tvText = convertView.findViewById(R.id.tv_text);
    tvText.setText(getItem(position).getKindName());
    GradientDrawable drawable = (GradientDrawable) tvText.getBackground();
    if (lastPosition == position) {
        int selectedColor = ContextCompat.getColor(context, R.color.colorAccent);
        tvText.setTextColor(selectedColor);
        drawable.setStroke(DensityUtil.dp2px(context, 2), selectedColor);
    } else {
        int normalColor = ContextCompat.getColor(context, R.color.colorBarText);
        tvText.setTextColor(normalColor);
        drawable.setStroke(DensityUtil.dp2px(context, 2), normalColor);
    }
    return convertView;
}
 
源代码2 项目: animation-samples   文件: TextResize.java
private static Bitmap captureTextBitmap(TextView textView) {
    Drawable background = textView.getBackground();
    textView.setBackground(null);
    int width = textView.getWidth() - textView.getPaddingLeft() - textView.getPaddingRight();
    int height = textView.getHeight() - textView.getPaddingTop() - textView.getPaddingBottom();
    if (width == 0 || height == 0) {
        return null;
    }
    Bitmap bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);
    Canvas canvas = new Canvas(bitmap);
    canvas.translate(-textView.getPaddingLeft(), -textView.getPaddingTop());
    textView.draw(canvas);
    textView.setBackground(background);
    return bitmap;
}
 
源代码3 项目: a   文件: FindFlowAdapter.java
@Override
    public View getView(com.kunfei.bookshelf.widget.flowlayout.FlowLayout parent, int position, MyFindKindGroupBean findKindGroupBean) {
        TextView tv = (TextView) LayoutInflater.from(parent.getContext()).inflate(R.layout.adapter_flow_find_item,
                parent, false);

        tv.setTag(findKindGroupBean.getGroupTag());
        tv.setText(findKindGroupBean.getGroupName());

        Random myRandom = new Random();
        int ranColor = 0xff000000 | myRandom.nextInt(0x00ffffff);
        //tv.setBackgroundColor(ranColor);


        GradientDrawable bgShape = (GradientDrawable)tv.getBackground();
        bgShape.setStroke(1, ranColor);

/*
         int roundRadius = 15; // 8px not dp

        int fillColor = Color.parseColor("#DFDFE0");
         bgShape.setColor(fillColor);
         bgShape.setCornerRadius(roundRadius);

*/
        tv.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if(null != onItemClickListener){
                    onItemClickListener.itemClick(v,findKindGroupBean);
                }
            }
        });
        return tv;
    }
 
源代码4 项目: AssistantBySDK   文件: RspMsgItemView.java
protected void init(Context mContext) {
    LayoutInflater iflater = LayoutInflater.from(mContext);
    iflater.inflate(R.layout.common_bubble_dialog_left, this);
    mTextView = (TextView) findViewById(R.id.common_bubble_left_text);
    mTextView.setOnTouchListener(this);
    mListDrawable = (LevelListDrawable) mTextView.getBackground();
}
 
源代码5 项目: atlas   文件: TextResize.java
private static Bitmap captureTextBitmap(TextView textView) {
    Drawable background = textView.getBackground();
    textView.setBackground(null);
    int width = textView.getWidth() - textView.getPaddingLeft() - textView.getPaddingRight();
    int height = textView.getHeight() - textView.getPaddingTop() - textView.getPaddingBottom();
    if (width == 0 || height == 0) {
        return null;
    }
    Bitmap bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);
    Canvas canvas = new Canvas(bitmap);
    canvas.translate(-textView.getPaddingLeft(), -textView.getPaddingTop());
    textView.draw(canvas);
    textView.setBackground(background);
    return bitmap;
}
 
源代码6 项目: android-instant-apps   文件: TextResize.java
private static Bitmap captureTextBitmap(TextView textView) {
    Drawable background = textView.getBackground();
    textView.setBackground(null);
    int width = textView.getWidth() - textView.getPaddingLeft() - textView.getPaddingRight();
    int height = textView.getHeight() - textView.getPaddingTop() - textView.getPaddingBottom();
    if (width == 0 || height == 0) {
        return null;
    }
    Bitmap bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);
    Canvas canvas = new Canvas(bitmap);
    canvas.translate(-textView.getPaddingLeft(), -textView.getPaddingTop());
    textView.draw(canvas);
    textView.setBackground(background);
    return bitmap;
}
 
源代码7 项目: android-login   文件: TextSizeTransition.java
private static Bitmap captureTextBitmap(TextView textView) {
  Drawable background = textView.getBackground();
  textView.setBackground(null);
  int width = textView.getWidth() - textView.getPaddingLeft() - textView.getPaddingRight();
  int height = textView.getHeight() - textView.getPaddingTop() - textView.getPaddingBottom();
  if (width == 0 || height == 0) {
    return null;
  }
  Bitmap bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);
  Canvas canvas = new Canvas(bitmap);
  canvas.translate(-textView.getPaddingLeft(), -textView.getPaddingTop());
  textView.draw(canvas);
  textView.setBackground(background);
  return bitmap;
}
 
源代码8 项目: EditTag   文件: EditTag.java
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
    boolean isHandle = false;
    if (actionId == EditorInfo.IME_ACTION_DONE) {
        String tagContent = editText.getText().toString();
        if (TextUtils.isEmpty(tagContent)) {
            // do nothing, or you can tip "can'nt add empty tag"
        } else {
            if (tagAddCallBack == null || (tagAddCallBack != null
                    && tagAddCallBack.onTagAdd(tagContent))) {
                TextView tagTextView = createTag(flowLayout, tagContent);
                if (defaultTagBg == null) {
                    defaultTagBg = tagTextView.getBackground();
                }
                tagTextView.setOnClickListener(EditTag.this);
                flowLayout.addView(tagTextView, flowLayout.getChildCount() - 1);
                tagValueList.add(tagContent);
                // reset action status
                editText.getText().clear();
                editText.performClick();
                isDelAction = false;
                isHandle = true;
            }
        }
    }
    return isHandle;
}
 
源代码9 项目: EditTag   文件: EditTag.java
public boolean addTag(String tagContent) {
    if (TextUtils.isEmpty(tagContent)) {
        // do nothing, or you can tip "can't add empty tag"
        return false;
    } else {
        if (tagAddCallBack == null || (tagAddCallBack != null
                && tagAddCallBack.onTagAdd(tagContent))) {
            TextView tagTextView = createTag(flowLayout, tagContent);
            if (defaultTagBg == null) {
                defaultTagBg = tagTextView.getBackground();
            }
            tagTextView.setOnClickListener(EditTag.this);
            if (isEditableStatus) {
                flowLayout.addView(tagTextView, flowLayout.getChildCount() - 1);
            } else {
                flowLayout.addView(tagTextView);
            }

            tagValueList.add(tagContent);
            // reset action status
            editText.getText().clear();
            editText.performClick();
            isDelAction = false;
            return true;
        }
    }
    return false;
}
 
源代码10 项目: InterestingTitleBar   文件: CustomTitleBar.java
private void setViewColor(TextView view, int color) {
    if (color == ORIGIN_COLOR) {
        view.setTextColor(mOriginBarTitleColor);
        if (view.getBackground() != null) {
            view.getBackground().clearColorFilter();
        }
    } else {
        view.setTextColor(color);
        if (view.getBackground() != null) {
            view.getBackground().setColorFilter(color, PorterDuff.Mode.SRC_ATOP);
        }
    }
}
 
源代码11 项目: android-art-res   文件: MainActivity.java
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    TextView textView = (TextView) findViewById(R.id.test_size);
    Drawable drawable = textView.getBackground();
    Log.e(TAG, "bg:" + drawable + "w:" + drawable.getIntrinsicWidth()
            + " h:" + drawable.getIntrinsicHeight());
}
 
private void processContactImage(Contact contact, TextView textView, TextView alphabeticTextView, CircleImageView contactImage) {
    try {
        String contactNumber = "";
        char firstLetter = 0;
        contactNumber = contact.getDisplayName().toUpperCase();
        firstLetter = contact.getDisplayName().toUpperCase().charAt(0);

        if (contact != null) {
            if (firstLetter != '+') {
                alphabeticTextView.setText(String.valueOf(firstLetter));
            } else if (contactNumber.length() >= 2) {
                alphabeticTextView.setText(String.valueOf(contactNumber.charAt(1)));
            }
            Character colorKey = AlphaNumberColorUtil.alphabetBackgroundColorMap.containsKey(firstLetter) ? firstLetter : null;
            GradientDrawable bgShape = (GradientDrawable) alphabeticTextView.getBackground();
            bgShape.setColor(ApplozicService.getContext(context).getResources().getColor(AlphaNumberColorUtil.alphabetBackgroundColorMap.get(colorKey)));
        }

        alphabeticTextView.setVisibility(View.GONE);
        contactImage.setVisibility(View.VISIBLE);
        if (contact != null) {
            if (contact.isDrawableResources()) {
                int drawableResourceId = ApplozicService.getContext(context).getResources().getIdentifier(contact.getrDrawableName(), "drawable", ApplozicService.getContext(context).getPackageName());
                contactImage.setImageResource(drawableResourceId);
            } else {
                contactImageLoader.loadImage(contact, contactImage, alphabeticTextView);
            }
        }
        textView.setVisibility(contact != null && contact.isOnline() ? View.VISIBLE : View.GONE);
    } catch (Exception e) {

    }
}
 
源代码13 项目: Applozic-Android-SDK   文件: AlMessageProperties.java
/**
 * This method loads the image for a Contact into the ImageView. If the user does not have image url set, it will create an alphabeticText image.
 * This will automatically check if the image is set and handle the views visibility by itself.
 *
 * @param imageView CircularImageView which loads the image for the user.
 * @param textView  TextView which will display the alphabeticText image.
 * @param contact   The Contact object whose image is to be displayed.
 */
public void loadContactImage(CircleImageView imageView, TextView textView, Contact contact) {
    try {
        textView.setVisibility(View.VISIBLE);
        imageView.setVisibility(View.GONE);
        String contactNumber = "";
        char firstLetter = 0;
        contactNumber = contact.getDisplayName().toUpperCase();
        firstLetter = contact.getDisplayName().toUpperCase().charAt(0);

        if (firstLetter != '+') {
            textView.setText(String.valueOf(firstLetter));
        } else if (contactNumber.length() >= 2) {
            textView.setText(String.valueOf(contactNumber.charAt(1)));
        }

        Character colorKey = AlphaNumberColorUtil.alphabetBackgroundColorMap.containsKey(firstLetter) ? firstLetter : null;
        GradientDrawable bgShape = (GradientDrawable) textView.getBackground();
        bgShape.setColor(context.getResources().getColor(AlphaNumberColorUtil.alphabetBackgroundColorMap.get(colorKey)));

        if (contact.isDrawableResources()) {
            textView.setVisibility(View.GONE);
            imageView.setVisibility(View.VISIBLE);
            int drawableResourceId = context.getResources().getIdentifier(contact.getrDrawableName(), "drawable", context.getPackageName());
            imageView.setImageResource(drawableResourceId);
        } else if (contact.getImageURL() != null) {
            loadImage(imageView, textView, contact.getImageURL(), 0);
        } else {
            textView.setVisibility(View.VISIBLE);
            imageView.setVisibility(View.GONE);
        }
    } catch (Exception e) {

    }
}
 
@NonNull
@Override
public View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent) {
    View listItemView = convertView;
    if (convertView == null) {
        listItemView = LayoutInflater.from(getContext()).inflate(R.layout.earthquake_list_item, parent, false);
    }

    // Find the earthquake at the given position in the list of earthquakes
    Earthquake currentEarthquake = getItem(position);

    // Find the TextView with view ID magnitude
    TextView magnitudeView = (TextView) listItemView.findViewById(R.id.magnitude);
    // Display the magnitude of the current earthquake in that TextView
    magnitudeView.setText(formatMagnitude(currentEarthquake.getMagnitude()));
    // Set the proper background color on the magnitude circle.
    // Fetch the background from the TextView, which is a GradientDrawable.
    GradientDrawable magnitudeCircle = (GradientDrawable) magnitudeView.getBackground();

    // Get the appropriate background color based on the current earthquake magnitude
    int magnitudeColor = getMagnitudeColor(currentEarthquake.getMagnitude());

    // Set the color on the magnitude circle
    magnitudeCircle.setColor(magnitudeColor);

    // Find the TextView with view ID location
    TextView primaryLocationView = (TextView) listItemView.findViewById(R.id.primary_location);
    TextView offsetLocationView = (TextView) listItemView.findViewById(R.id.offset_location);

    String location = currentEarthquake.getLocation();
    String primaryLocation;
    String locationOffset;
    if (location.contains(LOCATION_SEPARATOR)) {
        String[] parts = location.split(LOCATION_SEPARATOR);
        locationOffset = parts[0] + LOCATION_SEPARATOR;
        primaryLocation = parts[1];
    } else {
        locationOffset = getContext().getString(R.string.near_the);
        primaryLocation = location;
    }

    primaryLocationView.setText(primaryLocation);
    offsetLocationView.setText(locationOffset);

    // Create a new Date object from the time in milliseconds of the earthquake
    Date dateObject = new Date(currentEarthquake.getTimeInMilliseconds());

    // Find the TextView with view ID date
    TextView dateView = (TextView) listItemView.findViewById(R.id.date);
    // Format the date string (i.e. "Mar 3, 1984")
    String formattedDate = formatDate(dateObject);
    // Display the date of the current earthquake in that TextView
    dateView.setText(formattedDate);

    // Find the TextView with view ID time
    TextView timeView = (TextView) listItemView.findViewById(R.id.time);
    // Format the time string (i.e. "4:30PM")
    String formattedTime = formatTime(dateObject);
    // Display the time of the current earthquake in that TextView
    timeView.setText(formattedTime);

    // Return the list item view that is now showing the appropriate dat
    return listItemView;
}
 
源代码15 项目: nextcloud-notes   文件: NoteViewHolder.java
protected void bindCategory(@NonNull Context context, @NonNull TextView noteCategory, boolean showCategory, @NonNull String category, int mainColor) {
    final boolean isDarkThemeActive = NotesApplication.isDarkThemeActive(context);
    noteCategory.setVisibility(showCategory && !category.isEmpty() ? View.VISIBLE : View.GONE);
    noteCategory.setText(category);

    @ColorInt int categoryForeground;
    @ColorInt int categoryBackground;

    if (isDarkThemeActive) {
        if (isColorDark(mainColor)) {
            if (contrastRatioIsSufficient(mainColor, Color.BLACK)) {
                categoryBackground = mainColor;
                categoryForeground = Color.WHITE;
            } else {
                categoryBackground = Color.WHITE;
                categoryForeground = mainColor;
            }
        } else {
            categoryBackground = mainColor;
            categoryForeground = Color.BLACK;
        }
    } else {
        categoryForeground = Color.BLACK;
        if (isColorDark(mainColor) || contrastRatioIsSufficient(mainColor, Color.WHITE)) {
            categoryBackground = mainColor;
        } else {
            categoryBackground = Color.BLACK;
        }
    }

    noteCategory.setTextColor(categoryForeground);
    if (noteCategory instanceof Chip) {
        ((Chip) noteCategory).setChipStrokeColor(ColorStateList.valueOf(categoryBackground));
        ((Chip) noteCategory).setChipBackgroundColor(ColorStateList.valueOf(isDarkThemeActive ? categoryBackground : Color.TRANSPARENT));
    } else {
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
            DrawableCompat.setTint(noteCategory.getBackground(), categoryBackground);
        } else {
            final GradientDrawable drawable = (GradientDrawable) noteCategory.getBackground();
            drawable.setStroke(1, categoryBackground);
            drawable.setColor(isDarkThemeActive ? categoryBackground : Color.TRANSPARENT);
        }
    }
}
 
源代码16 项目: Dashchan   文件: ClickableToast.java
private ClickableToast(Holder holder) {
	this.holder = holder;
	Context context = holder.context;
	float density = ResourceUtils.obtainDensity(context);
	int innerPadding = (int) (8f * density);
	LayoutInflater inflater = LayoutInflater.from(context);
	View toast1 = inflater.inflate(LAYOUT_ID, null);
	View toast2 = inflater.inflate(LAYOUT_ID, null);
	TextView message1 = toast1.findViewById(android.R.id.message);
	TextView message2 = toast2.findViewById(android.R.id.message);
	View backgroundSource = null;
	Drawable backgroundDrawable = toast1.getBackground();
	if (backgroundDrawable == null) {
		backgroundDrawable = message1.getBackground();
		if (backgroundDrawable == null) {
			View messageParent = (View) message1.getParent();
			if (messageParent != null) {
				backgroundDrawable = messageParent.getBackground();
				backgroundSource = messageParent;
			}
		} else {
			backgroundSource = message1;
		}
	} else {
		backgroundSource = toast1;
	}

	StringBuilder builder = new StringBuilder();
	for (int i = 0; i < 100; i++) builder.append('W'); // Make long text
	message1.setText(builder); // Avoid minimum widths
	int measureSize = (int) (context.getResources().getConfiguration().screenWidthDp * density + 0.5f);
	toast1.measure(View.MeasureSpec.makeMeasureSpec(measureSize, View.MeasureSpec.AT_MOST),
			View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED));
	toast1.layout(0, 0, toast1.getMeasuredWidth(), toast1.getMeasuredHeight());
	Rect backgroundSourceTotalPadding = getViewTotalPadding(toast1, backgroundSource);
	Rect messageTotalPadding = getViewTotalPadding(toast1, message1);
	messageTotalPadding.left -= backgroundSourceTotalPadding.left;
	messageTotalPadding.top -= backgroundSourceTotalPadding.top;
	messageTotalPadding.right -= backgroundSourceTotalPadding.right;
	messageTotalPadding.bottom -= backgroundSourceTotalPadding.bottom;
	int horizontalPadding = Math.max(messageTotalPadding.left, messageTotalPadding.right) +
			Math.max(message1.getPaddingLeft(), message1.getPaddingRight());
	int verticalPadding = Math.max(messageTotalPadding.top, messageTotalPadding.bottom) +
			Math.max(message1.getPaddingTop(), message1.getPaddingBottom());

	ViewUtils.removeFromParent(message1);
	ViewUtils.removeFromParent(message2);
	LinearLayout linearLayout = new LinearLayout(context);
	linearLayout.setOrientation(LinearLayout.HORIZONTAL);
	linearLayout.setDividerDrawable(new ToastDividerDrawable(0xccffffff, (int) (density + 0.5f)));
	linearLayout.setShowDividers(LinearLayout.SHOW_DIVIDER_MIDDLE);
	linearLayout.setDividerPadding((int) (4f * density));
	linearLayout.setTag(this);
	linearLayout.addView(message1, LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);
	linearLayout.addView(message2, LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);
	((LinearLayout.LayoutParams) message1.getLayoutParams()).weight = 1f;
	linearLayout.setPadding(horizontalPadding, verticalPadding, horizontalPadding, verticalPadding);

	partialClickDrawable = new PartialClickDrawable(backgroundDrawable);
	message1.setBackground(null);
	message2.setBackground(null);
	linearLayout.setBackground(partialClickDrawable);
	linearLayout.setOnTouchListener(partialClickDrawable);
	message1.setPadding(0, 0, 0, 0);
	message2.setPadding(innerPadding, 0, 0, 0);
	message1.setSingleLine(true);
	message2.setSingleLine(true);
	message1.setEllipsize(TextUtils.TruncateAt.END);
	message2.setEllipsize(TextUtils.TruncateAt.END);
	container = linearLayout;
	message = message1;
	button = message2;

	windowManager = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
}
 
源代码17 项目: Applozic-Android-SDK   文件: UserProfileFragment.java
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {

    View view = inflater.inflate(R.layout.user_profile_fragment_layout, container, false);
    name_cardView = (CardView) view.findViewById(R.id.applzoic_name_cardView);
    email_cardView = (CardView) view.findViewById(R.id.applzoic_email_cardview);
    status_cardView = (CardView) view.findViewById(R.id.applzoic_last_sean_status_cardView);
    phone_cardView = (CardView) view.findViewById(R.id.applozic_user_phone_cardview);
    name = (TextView) view.findViewById(R.id.userName);
    status = (TextView) view.findViewById(R.id.applozic_user_status);
    email = (TextView) view.findViewById(R.id.email);
    phone = (TextView) view.findViewById(R.id.phone);
    contactImage = (CircleImageView) view.findViewById(R.id.contactImage);
    alphabeticTextView = (TextView) view.findViewById(R.id.alphabeticImage);

    Bundle bundle = getArguments();
    if (bundle != null) {
        contact = (Contact) bundle.getSerializable(ConversationUIService.CONTACT);
        contact = baseContactService.getContactById(contact.getContactIds());

        ((CustomToolbarListener)getActivity()).setToolbarTitle(contact.getDisplayName());

        name.setText(contact.getDisplayName());
        char firstLetter = contact.getDisplayName().toUpperCase().charAt(0);
        String contactNumber = contact.getDisplayName().toUpperCase();
        if (firstLetter != '+') {
            alphabeticTextView.setText(String.valueOf(firstLetter));
        } else if (contactNumber.length() >= 2) {
            alphabeticTextView.setText(String.valueOf(contactNumber.charAt(1)));
        }
        Character colorKey = AlphaNumberColorUtil.alphabetBackgroundColorMap.containsKey(firstLetter) ? firstLetter : null;
        GradientDrawable bgShape = (GradientDrawable) alphabeticTextView.getBackground();
        bgShape.setColor(getActivity().getResources().getColor(AlphaNumberColorUtil.alphabetBackgroundColorMap.get(colorKey)));
        if (contact.isDrawableResources()) {
            int drawableResourceId = getResources().getIdentifier(contact.getrDrawableName(), "drawable", getActivity().getPackageName());
            contactImage.setImageResource(drawableResourceId);
        } else {
            contactImageLoader.loadImage(contact, contactImage, alphabeticTextView);
        }


        name.setText(contact.getDisplayName());

        if (!TextUtils.isEmpty(contact.getEmailId())) {
            email_cardView.setVisibility(View.VISIBLE);
            email.setText(contact.getEmailId());
        }
        if (!TextUtils.isEmpty(contact.getStatus())) {
            status_cardView.setVisibility(View.VISIBLE);
            status.setText(contact.getStatus());
        }
        if (!TextUtils.isEmpty(contact.getContactNumber())) {
            phone_cardView.setVisibility(View.VISIBLE);
            phone.setText(contact.getContactNumber());
        } else {
            phone_cardView.setVisibility(View.GONE);
        }

    }

    return view;
}
 
 方法所在类
 同类方法