2016-05-11 2 views

ответ

0

В своей странице .xml этот код:

<com.xxx.xxx.xxx.RoundedImageView 
        android:id="@+id/imageView_round" 
        android:layout_width="60dp" 
        android:layout_height="60dp" 
        android:layout_gravity="center" 
        android:layout_marginTop="10dp" 
        android:layout_weight="1" 
        android:scaleType="fitCenter" 
        android:src="@drawable/doctor" /> 

Для RoundedImageView вы должны копировать вставить это:

public class RoundedImageView extends ImageView { 

    public RoundedImageView(Context context) { 
     super(context); 

    } 

    public RoundedImageView(Context context, AttributeSet attrs) { 
     super(context, attrs); 
    } 

    public RoundedImageView(Context context, AttributeSet attrs, int defStyle) { 
     super(context, attrs, defStyle); 
    } 

    @SuppressLint("DrawAllocation") 
    @Override 
    protected void onDraw(Canvas canvas) { 

     Drawable drawable = getDrawable(); 

     if (drawable == null) { 
      return; 
     } 

     if (getWidth() == 0 || getHeight() == 0) { 
      return; 
     } 
     Bitmap b = ((BitmapDrawable) drawable).getBitmap(); 
     Bitmap bitmap = b.copy(Bitmap.Config.ARGB_8888, true); 
     int w = getWidth(), h = getHeight(); 

     Bitmap bmm = Bitmap.createScaledBitmap(bitmap, bitmap.getWidth(), 
       bitmap.getHeight(), true); 

     Bitmap roundBitmap = getCroppedBitmap(bitmap, w); 
     canvas.drawBitmap(roundBitmap, 0, 0, null); 

    } 

    public static Bitmap getCroppedBitmap(Bitmap bmp, int radius) { 
     Bitmap sbmp; 
     if (bmp.getWidth() != radius || bmp.getHeight() != radius) 
      sbmp = Bitmap.createScaledBitmap(bmp, radius, radius, false); 
     else 
      sbmp = bmp; 
     Bitmap output = Bitmap.createBitmap(sbmp.getWidth(), sbmp.getHeight(), 
       Config.ARGB_8888); 
     Canvas canvas = new Canvas(output); 

     final int color = 0xffa19774; 
     final Paint paint = new Paint(); 
     final Rect rect = new Rect(0, 0, sbmp.getWidth(), sbmp.getHeight()); 

     paint.setAnti`enter code here`Alias(true); 
     paint.setFilterBitmap(true); 
     paint.setDither(true); 
     canvas.drawARGB(0, 0, 0, 0); 
     paint.setColor(Color.parseColor("#BAB399")); 
     canvas.drawCircle(sbmp.getWidth()/2 + 0.7f, 
       sbmp.getHeight()/2 + 0.7f, sbmp.getWidth()/2 + 0.1f, paint); 
     paint.setXfermode(new PorterDuffXfermode(Mode.SRC_IN)); 
     canvas.drawBitmap(sbmp, rect, rect, paint); 

     return output; 
    } 

} 

Я надеюсь, что это поможет

0

Это может быть реализовано с учетом Recycler, если вы хотите, чтобы просмотреть изображения, а также, чтобы прокрутить вид Recycler Горизонтально вас может использовать ниже код.

recyclerView.setLayoutManager(new LinearLayoutManager(RecyclerView_Activity.this, LinearLayoutManager.HORIZONTAL, false)); 

Вы можете добавить Recycler вида (с изображениями) и TextView (Имея значение +194 общие) в горизонтальной компоновке и когда мы прокручиваем в списке вы можете установить кол ожидающего элемента в TextView ,

Если ваше требование заключается не в прокрутке изображений, вы можете просто добавить изображения в линейный макет и добавить текстовое представление, чтобы показать счет.

Смежные вопросы