Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Картинка по ширине и не сжата - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Диалог выбора папки LIB http://www.cyberforum.ru/android-dev/thread928270.html
Подскажите, а нет ли готовой библиотеки типа мини проводника?
Программирование Android Приоритет интернет соединения Можно ли контролировать приоритет интернет соединения в приложении? Например есть два activity A и B, и есть медленное интернет-соединение скоростью 8 Кбайст\сек. Загружаем activity A, получаем... http://www.cyberforum.ru/android-dev/thread928246.html
Перевести Unix дату в читаемый вид Программирование Android
Дайте пожалуйста пример как из Unix даты (1374658804) получить нормальный вид.
Программирование Android Программирование
Посоветуйте какие нибудь книги или видео уроки по программированию для андроида. Вообще не знаю что да как, при помощи какого языка и т.д. (т.е. урок должен быть с нуля)
Программирование Android Создание кликабельного объекта на карте http://www.cyberforum.ru/android-dev/thread928210.html
Приветствую всех! Использую либу mapsforge (offline карты osm), возникла необходимость добавлять на карту объекты(собственные POI), с возможностью кликать по ним. По клику вылазит подсказка об...
Программирование Android Проблемы с ImageView и фоновой музыкой Здравствуйте, форумчане. Занимаюсь написанием игры.. Вообще, это мой первый опыт написания под андроид)) Но приходится вертеться. Итак, вопросы. 1) Мне нужно разместить ImageView так, чтобы он... подробнее

Показать сообщение отдельно
V0v1k
1158 / 982 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
25.07.2013, 03:08
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
public class Square extends Drawable
{
    private final Paint mPaint;
    private final RectF mRect;
 
    public Square()
    {
        mPaint = new Paint();
        mRect = new RectF();
    }
 
    @Override
    public void draw(Canvas canvas)
    {
        // Set the correct values in the Paint
        mPaint.setARGB(255, 255, 0, 0);
        mPaint.setStrokeWidth(2);
        mPaint.setStyle(Style.FILL);
 
        // Adjust the rect
        mRect.left = 15.0f;
        mRect.top = 50.0f;
        mRect.right = 55.0f;
        mRect.bottom = 75.0f;
 
        // Draw it
        canvas.drawRoundRect(mRect, 0.5f, 0.5f, mPaint);
    }
 
    @Override
    public int getOpacity()
    {
        return PixelFormat.OPAQUE;
    }
 
    @Override
    public void setAlpha(int arg0)
    {
    }
 
    @Override
    public void setColorFilter(ColorFilter arg0)
    {
    }
}
Добавлено через 7 минут
вот пример реализации аналога android:scaleType="centerCrop" в кастомном View
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
@Override
       protected void onDraw(Canvas canvas) {
             int bitmapWidth = mBitmap .getWidth();
             int bitmapHeight = mBitmap .getHeight();
             int viewWidth = getWidth();
             int viewHeight = getHeight();
             float widthRatio = (float) viewWidth / bitmapWidth;
             float heightRatio = (float) viewHeight / bitmapHeight;
 
             mDrawRect.left = 0;
             mDrawRect.top = 0;
             mDrawRect.right = bitmapWidth;
             mDrawRect.bottom = bitmapHeight;
 
             // scaling
             if (widthRatio != 1 || heightRatio != 1) {
                   float biggestRatio = widthRatio > heightRatio ? widthRatio
                              : heightRatio;
                   mDrawRect.right = (int) ( mRect.right * biggestRatio);
                   mDrawRect.bottom = (int) ( mRect.bottom * biggestRatio);
            }
 
             // centering
             if (mDrawRect .width() > viewWidth) {
                   int widthDifference = mDrawRect .width() - viewWidth;
                   int offset = widthDifference / 2;
                   mDrawRect.left -= offset;
                   mDrawRect.right -= offset;
            }
 
             if (mDrawRect .height() > viewHeight) {
                   int heightDifference = mDrawRect .height() - viewHeight;
                   int offset = heightDifference / 2;
                   mDrawRect.top -= offset;
                   mDrawRect.bottom -= offset;
            }
 
            canvas.drawBitmap( mBitmap, null , mDrawRect , null);
      }
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru