Форум программистов, компьютерный форум, киберфорум
Программирование Android
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
Программирование Android Ресвйз и центровка изображения в webview и youtube При разработке приложения столкнулся с проблемой отображения анимации в вебвью, оно отображается не по центру и возникает вопрос, как сделать resize изображения под разные экраны и разрешения и чтоб оно было по центру(код в комментах пашет очень плохо?) Плюс проблема с пересылкой строки в youtube. tvTitle берется из базы данных и каждый раз он разный,при передаче в ютюб вместо нужной... https://www.cyberforum.ru/ android-dev/ thread1204676.html Генератор стилей Android приложений Программирование Android
Есть такие генераторы ? видел для ActionBar есть генератор.. 1) а есть есть более глобальней генераторы ? т.е. для View элементов и т.п. 2) может можно где уже готовые шаблоны оформления интерфейса скачать ?? Спасибо!... Добавлено через 40 секунд
Программирование Android Как позволить установку приложения на карту памяти? Здравствуйте. Возникла необходимость дать возможность переносить программу на SD карту. Видится мне, что делается это в пару кликов, только вот не приходилось никогда делать, поэтому не знаю. Кто знает подскажите пожалуйста. Гугл что-то не находит ответ на мой вопрос. Спасибо. https://www.cyberforum.ru/ android-dev/ thread1204572.html Программирование Android Стили для создания чата https://www.cyberforum.ru/ android-dev/ thread1204387.html
Добрый день все. Я пытаюсь создать чат на андройд для своего сайта. Вся суть передачи и получения данных мне известна, но так как я совсем новечек в сосдании андройд приложениях то мне очень сложно разобратся в стилях различных view. Я всем сердце и душой понимаю что сообщения дожны выводится в ListView(именно это меня и волнует). Вот прошу хоть как нить меня направить на какие нибуть статьи что...
Программирование Android Сфотографировать, обрезать, получить миниатюру и записать фото в память телефона
Здравствуйте ув. форумчане, просьба помочь начинающему :) Стоит задание: 1. Сделать фото по нажатию на кнопку. 2. Обрезать 3. Получить миниатюру фото и вывести в ImageView. 4. Записать обрезанное, полноразмерное фото в память телефона (или на карту, пока не важно). Воспользовался методом http://developer.alexanderklimov.ru/android/photocamera.php и по этим...
Программирование Android Текст не умещается в выпадающий список (spinner dropdown) https://www.cyberforum.ru/ android-dev/ thread1204139.html
Имеется очень длинный текст, который даже на андроиде с большим экраном, в выпадающем списке не умещается. См. код: ArrayList<String> tempList=new ArrayList<String>(); tempList.add("Это очень длинный текст!"); ArrayAdapter<String> adapterTemp=new ArrayAdapter<String>(getActivity(), R.layout.spinner_item, tempList); adapterTemp.setDropDownViewResource(R.layout.spinner_dropdown_item); Как...
Программирование Android Не работает HttpClient https://www.cyberforum.ru/ android-dev/ thread1203989.html
Первый раз пробую отправить и получить данные на сервер... Полазил в нете и накопал такую функцию... но когда в эмуляторе запускаю и вызываю функцию postData то выкидывает с приложения с ошибками Вот код.. public class MainActivity extends Activity { public EditText login; public EditText pass; public TextView result; private ProgressDialog dialog; private InputStream...
Программирование Android 2 tabhost в один активити
как это сделать ? как я не кручу у меня при tabHost.addTab(tabSpec); выводит нул поинт экзепшен :(( <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="horizontal" > <LinearLayout android:id="@+id/Listcarlayout"
Программирование Android Изменение background layout 'а сторонней Activity При нажатии на кнопку должен меняться background некоторых layout'ов, которые находятся в других Activity. public class SettingsActivity extends Activity { RelativeLayout settingsAct, writeAct, listAct, calendarAct, dialogAct; Button button1,button2,button3; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); https://www.cyberforum.ru/ android-dev/ thread1203744.html Программирование Android не загружаются данные https://www.cyberforum.ru/ android-dev/ thread1203449.html
В общем, есть несколько баз данных, в каждой по одной таблице(id и имя), и есть несколько листвью. При закрытии активити данные из лист вью загружаются в в бд. При возврате в активити данные из бд должны загружаться назад в во все листвью. В первые 4 загружаются, а 2 последних нет, делаю все по аналогии, 100 раз все перепроверил, но все равно не грузит, может есть какой-то лимит на количество...
Упрощенная регистрация Программирование Android
Видел в некоторых играх к примеру clash of clans используется упрощенная регистрация новых игроков, интересно как это делается? Возможно регистрируется на основе Android Device ID... или как-то еще но ведь это не безопасно без каптчи и пр. Или есть какой-то хитрый способ серверной проверки Device ID?
0 / 0 / 0
Регистрация: 10.06.2014
Сообщений: 4
0

Реализовать рисование и перемещение картинки одним касанием - Программирование Android - Ответ 6300508

10.06.2014, 17:30. Показов 2392. Ответов 3
Метки (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте, форумчане, проблема в следующем: необходимо реализовать перемещение объекта (ImageView) с помощью метода onTouch() и рисование на форме (RelativeLayout) одним касанием пользователя. Работает по отдельности и перемещение картинки, и рисование, но нужно, чтобы действия выполнялись одновременно. Что нужно исправить? Только начал программировать На Java.. Исходник прилагается


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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
class DrawingView extends View
{
       Paint   mPaint;
       Bitmap  mBitmap;
       Canvas  mCanvas;
       Path    mPath;
       Paint   mBitmapPaint;
 
   public DrawingView(Context context) {
       super(context);
           mPaint = new Paint();
           mPaint.setAntiAlias(true);
           mPaint.setDither(true);
           mPaint.setColor(0xFFFF0000);
           mPaint.setStyle(Paint.Style.STROKE);
           mPaint.setStrokeJoin(Paint.Join.ROUND);
           mPaint.setStrokeCap(Paint.Cap.ROUND);
           mPaint.setStrokeWidth(20);
 
       mPath = new Path();
       mBitmapPaint = new Paint();
       mBitmapPaint.setColor(Color.RED);
   }
    @Override
       protected void onSizeChanged(int w, int h, int oldw, int oldh) {
           super.onSizeChanged(w, h, oldw, oldh);
           mBitmap = Bitmap.createBitmap(w, h, Bitmap.Config.ARGB_8888);
           mCanvas = new Canvas(mBitmap);
       }
   @Override
   public void draw(Canvas canvas) {
       super.draw(canvas);
       canvas.drawBitmap(mBitmap, 0, 0, mBitmapPaint);
       canvas.drawPath(mPath, mPaint);
   }
   private float mX, mY;
   private static final float TOUCH_TOLERANCE = 4;
 
   void touch_start(float x, float y) {
       mPath.moveTo(x, y);
       mX = x;
       mY = y;
   }
   void touch_move(float x, float y) {
       float dx = Math.abs(x - mX);
       float dy = Math.abs(y - mY);
       if (dx >= TOUCH_TOLERANCE || dy >= TOUCH_TOLERANCE) {
           mPath.quadTo(mX, mY, (x + mX)/2, (y + mY)/2);
           mX = x;
           mY = y;
       }
   }
   void touch_up() {
       mPath.lineTo(mX, mY);
       mCanvas.drawPath(mPath, mPaint);
       mPath.reset();
   }
 
   @Override
   public boolean onTouchEvent(MotionEvent event) {
       float x = event.getX();
       float y = event.getY();
 
       switch (event.getAction()) {
           case MotionEvent.ACTION_DOWN:
               touch_start(x, y);
               invalidate();
               break;
           case MotionEvent.ACTION_MOVE:
               touch_move(x, y);
               invalidate();
               break;
           case MotionEvent.ACTION_UP:
               touch_up();
               invalidate();
               break;
       }
       return true;
   }
}
 
public class Game extends Activity implements OnTouchListener {
 
    private View selected_item = null;
    private int offset_x = 0;
    private int offset_y = 0;
    Boolean touchFlag = false;
    View root;
    ImageView image3;
    int eX, eY;
    DrawingView mDrawingView;
    View mDrawingPad;
 
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        this.requestWindowFeature(Window.FEATURE_NO_TITLE);
        this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, 
                WindowManager.LayoutParams.FLAG_FULLSCREEN);
        setContentView(R.layout.main);      
        
        root = (RelativeLayout)findViewById(R.id.layout);
        image3 = (ImageView) findViewById(R.id.imageView1);
        image3.setOnTouchListener(this);
        
        //mDrawingPad = findViewById(android.R.id.content).getRootView();
        //mDrawingView = new DrawingView(mDrawingPad.getContext()); 
        //((ViewGroup) mDrawingPad).addView(mDrawingView);
        
        root.setOnTouchListener(new View.OnTouchListener() {
            public boolean onTouch(View v, MotionEvent event) {
                if (touchFlag) {
                    switch (event.getActionMasked()) {
                        case MotionEvent.ACTION_DOWN: 
                            break;
                        case MotionEvent.ACTION_MOVE:
                            eX = (int) event.getX();
                            eY = (int) event.getY();
                            int x = (int) event.getX() - offset_x;
                            int y = (int) event.getY() - offset_y;
                            int T = (int) root.getTop()+10;
                            int L = (int) root.getLeft()+10;
                            int R = (int) root.getRight()-10;
                            int B = (int) root.getBottom()-10;
                            RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(
                                    new ViewGroup.MarginLayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, 
                                            RelativeLayout.LayoutParams.WRAP_CONTENT));
                            lp.setMargins(x, y, 0, 0);
                            
                            if (!(eX < L || eX > R || eY < T || eY > B))
                            {
                                selected_item.setLayoutParams(lp);
                            }
                            break;
                        case MotionEvent.ACTION_UP:
                            touchFlag = false;
                            break;                           
                        default:
                            break;
                    }
                }
                return true;
            }
        });
    }
 
    public boolean onTouch(View v, MotionEvent event) {
        switch (event.getActionMasked()) {
            case MotionEvent.ACTION_DOWN:
                touchFlag = true;
                offset_x = (int) event.getX();
                offset_y = (int) event.getY();
                selected_item = v;
                break;
            case MotionEvent.ACTION_UP:
                selected_item = null;
                touchFlag = false;
                break;
            default:
                break;
        }
        return false;
    }
    
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
 
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        int id = item.getItemId();
        if (id == R.id.action_settings) {
            return true;
        }
        return super.onOptionsItemSelected(item);
    }
}


Вернуться к обсуждению:
Реализовать рисование и перемещение картинки одним касанием Программирование Android
Вложения
Тип файла: rar Working.rar (1.34 Мб, 18 просмотров)
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.06.2014, 17:30
Готовые ответы и решения:

Рисование и перемещение точки - на чем это можно реализовать
Здравствуйте..читаю учебник по VB 2010, дошел до графики... Написано, что код для создания и...

Реализовать плавное перемещение картинки
Здравствуйте! У меня к Вам такой вопрос, как сделать так, чтобы добавленная мною картинка...

Рисование на pictureBox. Реализовать последовательную смену картинки
Здравствуйте! private void Clear() { gr.Clear(Color.White); ...

Как задать плавное перемещение картинки в PictureBox (или перемещение самого PictureBox) из точки А в точку Б по прямой?
Необходимо задать плавное перемещение по прямой линии из &quot;А&quot; в &quot;Б&quot; по нажатию &quot;Button&quot;

3
10.06.2014, 17:30
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.06.2014, 17:30
Помогаю со студенческими работами здесь

Перемещение на несколько столбцов одним нажатием
Здравствуйте! Подскажите пожалуйста как в excel можно при нажатии на клавиатуре кнопки &quot;-&gt;&quot;...

Рисование на форме и перемещение по таймеру
Народ, доброго времени суток, помогите пожалуйста разобраться! Есть задача, нужно создать...

Перемещение объекта и его рисование на форме
Доброго времени суток, форумчане. Как можно реализовать перемещение объектов Obj в моей программе ?...

Рисование и перемещение линий по нажатию кнопок мыши
По нажатию пкм нарисовать линию, а по нажатию лкм перемещение этой линии

Рисование картинки
Класс TImage, стандартные диалоги для работы с картинками. класс canvas (холст), инструменты...

Рисование картинки, прозрачной на n%
Возник такой вопрос: как нарисовать картинку таким способом gr.DrawImage(New...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru