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

Bitmap, resize - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Выбрать запись по позиции SQLite http://www.cyberforum.ru/android-dev/thread960883.html
Доброго времени суток всем . Давно уже пытаюсь решить проблему с SQLite - нужно получить запись зная её позицию. По началу это очень легко сделать SELECT xx FROM x WHERE _id = position ; но если я...
Программирование Android Непонятки с Адмоб Вопрос по Admob Подскажите, в чем разница между одним Refresh rate и другим http://www.cyberforum.ru/android-dev/thread960819.html
Программирование Android ActionBar Tabs наложение вкладок
Здравствуйте! Вот мой листенер на табы: package com.contedevel.timetable; import android.app.ActionBar.Tab; import android.app.ActionBar; import android.app.Activity; import...
Программирование Android OutOfMemory во время тестов
Привет, форумчане. Во время тестирования возникает проблема с памятью, при анализе памяти получаю результат который можно увидеть во вложениях. Думаю что это происходить из-за частого использования...
Программирование Android Неправильно работает правило Крамера http://www.cyberforum.ru/android-dev/thread960536.html
не правильно считает результат в методе Sum package com.example.kramermetod; import java.util.NoSuchElementException; import android.hardware.Sensor; import android.hardware.SensorManager;...
Программирование Android Работа с числами типа double еть два числа типа double: a=0.0001, b=500 при делении a/b=2.00000000000000002E-7, вопрос откуда лишняя двойка? и как от нее избавиться? далее в коде (код не я писал) используется такая... подробнее

Показать сообщение отдельно
haribo
41 / 41 / 3
Регистрация: 26.05.2013
Сообщений: 160
24.09.2013, 09:50  [ТС]
кастомное вью, наследуется от imageview, его ресайзю по пинчу. ресайзю следующим образом:


mScaledImageWidth и mScaledImageHeight получаю следующим образом:
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
    @Override
    public boolean onTouchEvent(MotionEvent event) {
        int positionX = (int) event.getRawX();
        int positionY = (int) event.getRawY();
 
        switch (event.getAction() & MotionEvent.ACTION_MASK) {
             // many code
            case MotionEvent.ACTION_POINTER_DOWN:
                movingDist = spacing(event);
                if (movingDist > stdDist) {
                    MODE = ZOOM;
                }
                break;
            case MotionEvent.ACTION_MOVE:
               if (MODE == ZOOM) {
                  float newMovingDist = spacing(event);
                  if (newMovingDist > stdDist) {
                       mScaledImageHeight = (int) (newMovingDist / movingDist * mImageHeight);
                       mScaledImageWidth = (int) (newMovingDist / movingDist * mImageWidth);
 
                       scaleImage();
                  }
         }
 
        mImagePosition = new Rect(startXPosition, startYPosition, mImageWidth, mImageHeight); // на начальном этапе
 
       public void scaleImage() {
            if (mScaledImageWidth == 0 && mScaledImageHeight == 0) {
                mImagePosition.right = mImagePosition.left + mImageWidth;
                mImagePosition.bottom = mImagePosition.top + mImageHeight;
            } else {
                mImagePosition.right = mImagePosition.left + mScaledImageWidth;
                mImagePosition.bottom = mImagePosition.top + mScaledImageHeight;
            }
            mImageRegion.set(mImagePosition);
        }
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru