diff options
Diffstat (limited to 'WordPress/src/main/java/org/wordpress/android/ui/reader/views/ReaderIconCountView.java')
-rw-r--r-- | WordPress/src/main/java/org/wordpress/android/ui/reader/views/ReaderIconCountView.java | 91 |
1 files changed, 91 insertions, 0 deletions
diff --git a/WordPress/src/main/java/org/wordpress/android/ui/reader/views/ReaderIconCountView.java b/WordPress/src/main/java/org/wordpress/android/ui/reader/views/ReaderIconCountView.java new file mode 100644 index 000000000..9e2ff2fd2 --- /dev/null +++ b/WordPress/src/main/java/org/wordpress/android/ui/reader/views/ReaderIconCountView.java @@ -0,0 +1,91 @@ +package org.wordpress.android.ui.reader.views; + +import android.content.Context; +import android.content.res.TypedArray; +import android.support.v4.content.ContextCompat; +import android.util.AttributeSet; +import android.widget.ImageView; +import android.widget.LinearLayout; +import android.widget.TextView; + +import org.wordpress.android.R; +import org.wordpress.android.ui.reader.utils.ReaderUtils; +import org.wordpress.android.util.FormatUtils; + +/* + * used when showing comment + comment count, like + like count + */ +public class ReaderIconCountView extends LinearLayout { + private ImageView mImageView; + private TextView mTextCount; + private int mIconType; + + // these must match the same values in attrs.xml + private static final int ICON_LIKE = 0; + private static final int ICON_COMMENT = 1; + + public ReaderIconCountView(Context context){ + super(context); + initView(context, null); + } + + public ReaderIconCountView(Context context, AttributeSet attrs) { + super(context, attrs); + initView(context, attrs); + } + + public ReaderIconCountView(Context context, AttributeSet attrs, int defStyle) { + super(context, attrs, defStyle); + initView(context, attrs); + } + + private void initView(Context context, AttributeSet attrs) { + inflate(context, R.layout.reader_icon_count_view, this); + + mImageView = (ImageView) findViewById(R.id.image_count); + mTextCount = (TextView) findViewById(R.id.text_count); + + if (attrs != null) { + TypedArray a = context.getTheme().obtainStyledAttributes( + attrs, + R.styleable.ReaderIconCountView, + 0, 0); + try { + mIconType = a.getInteger(R.styleable.ReaderIconCountView_readerIcon, ICON_LIKE); + switch (mIconType) { + case ICON_LIKE : + mImageView.setImageDrawable(ContextCompat.getDrawable(context, R.drawable.reader_button_like)); + break; + case ICON_COMMENT : + mImageView.setImageDrawable(ContextCompat.getDrawable(context, R.drawable.reader_button_comment)); + break; + } + + } finally { + a.recycle(); + } + } + + ReaderUtils.setBackgroundToRoundRipple(mImageView); + } + + public ImageView getImageView() { + return mImageView; + } + + public void setSelected(boolean selected) { + mImageView.setSelected(selected); + mTextCount.setSelected(selected); + } + + @Override + public void setEnabled(boolean enabled) { + super.setEnabled(enabled); + mImageView.setEnabled(enabled); + mTextCount.setEnabled(enabled); + } + + public void setCount(int count) { + mTextCount.setText(FormatUtils.formatInt(count)); + } +}
\ No newline at end of file |