Форум программистов, компьютерный форум, киберфорум
Программирование Android
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
4 / 4 / 0
Регистрация: 24.07.2013
Сообщений: 80
1

Как считает?

25.07.2013, 16:27. Показов 678. Ответов 12
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Собственно, вызываю метод в onCreate:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
yu_catch(261, 286, w, h);   //w - ширина используемого экрана; h - высота используемого экрана
 
само описание метода:
yu_catch(int x, int y,int w, int h){                       //Метод, реализующий подсчёт позиций для объектов
                   int xn=(w/800)*x;                                         //позиция
                   int yn=(h/480)*y;
 
                   int vx=w/(800/92);                                        //масштабирование
                   int vy= h/(480/94);
 
                   final String v=String.format("%s", xn);
                   Toast.makeText(this, v, Toast.LENGTH_LONG).show();
 
       RelativeLayout ll= (RelativeLayout) findViewById(R.id.yu_lay);
       ImageView iv=new ImageView(this);
       iv.setImageResource(R.drawable.sphere);
 
       RelativeLayout.LayoutParams params=new RelativeLayout.LayoutParams(vx, vy);
       params.leftMargin=xn;
       params.topMargin=yn;
       ll.addView(iv, params);
   }
суть проблемы: не происходит пересчёта позиций в int xn=(w/800)*x; int yn=(h/480)*y; (при этом величину экрана он принимает верно и все использующиеся в формуле переменные тоже), то есть, каким бы ни был экран, xn и yn не меняются. Почему?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.07.2013, 16:27
Ответы с готовыми решениями:

Продвижение приложения и как Google play считает уникальные установки?
Ребята, закончил я свой мини проект, и как предвиделось, мир оказался не готов скачивать мое детище...

Запрос считает итоговую сумму по договору выполненных разных услуг, но повторяющиеся не считает
Есть запрос procedure TForm7.Button2Click(Sender: TObject); var i:integer; begin...

Функция не считает русские символы (считает только латинские)
Функция .count из QString подсчитывает только английские буквы, когда пытаюсь заменить 'f' на любую...

Mathcad слишком долго считает. Считает ли?
Уважаемые форумчане, есть вопрос: Задал считать символьное дифференцирование очень сложной...

12
86 / 86 / 13
Регистрация: 03.03.2011
Сообщений: 1,873
25.07.2013, 16:31 2
по своему опыту скажу, что лучше верстать из xml, потому что ,опять же по моему опыту, изменять положение и тд объектов из кода не очнеь то выходит
0
4 / 4 / 0
Регистрация: 24.07.2013
Сообщений: 80
25.07.2013, 16:32  [ТС] 3
в хмл не знаю как использовать формулу для подсчёта позиции и запихивать именно в полученные позиции. Буду счастлива, если подскажете, как это сделать=)
0
86 / 86 / 13
Регистрация: 03.03.2011
Сообщений: 1,873
25.07.2013, 16:35 4
нарисуйте в паинте что вам надо, мб смогу помочь
0
4 / 4 / 0
Регистрация: 24.07.2013
Сообщений: 80
25.07.2013, 16:54  [ТС] 5
А да..у меня бэкграунд задан)в нём есть белое пятно))которое, естественно, на разных экранах в разных местах оказывается. Так вот мне нужно засунуть именно в это белое пятно картинку, которая как раз его заполнять должна. Поэтому для разных экранов считаю его чёткую позицию по формуле.
0
86 / 86 / 13
Регистрация: 03.03.2011
Сообщений: 1,873
25.07.2013, 16:58 6
используйте 9path и/или размерность dp
0
4 / 4 / 0
Регистрация: 24.07.2013
Сообщений: 80
25.07.2013, 17:01  [ТС] 7
Так эту размерность как-то считать нужно при всём при этом. Просто так без задания чёткой позиции уже пыталась в xml засунуть. Но там вообще бесперспективняк=( Поэтому пришлось программно. Но проблема остаётся в том, что как будто он не считает вообще значения формул. А почему - неизвестно. Если бы всё верно считал, то и позиционировал бы верно...
0
106 / 106 / 1
Регистрация: 09.04.2012
Сообщений: 655
25.07.2013, 17:32 8
А использовать Gravity не подойдет? + margin ?
0
4 / 4 / 0
Регистрация: 24.07.2013
Сообщений: 80
25.07.2013, 17:33  [ТС] 9
Неа..всё это не прилепляет к фону и чёткому месту на экране=(
0
106 / 106 / 1
Регистрация: 09.04.2012
Сообщений: 655
25.07.2013, 17:36 10
Цитата Сообщение от Yushka Посмотреть сообщение
Toast.makeText(this, v, Toast.LENGTH_LONG).show();
Проставьте это после каждой строчки и увидите, где не верно считает
0
4 / 4 / 0
Регистрация: 24.07.2013
Сообщений: 80
25.07.2013, 18:15  [ТС] 11
Я вижу, где неверно считает (формулы неверно считает при том, что все значения верно передаются, проверяла таким же способом - выводом), я не могу понять, почему. Может у него специфические там особенности какие-то этому препятствуют - фиг знает.
0
86 / 86 / 13
Регистрация: 03.03.2011
Сообщений: 1,873
25.07.2013, 20:32 12
мб вы как то не верно ширину и высоту экрана получаете?
0
4 / 4 / 0
Регистрация: 24.07.2013
Сообщений: 80
26.07.2013, 11:35  [ТС] 13
Все величины передаются верно, просто как будто игнорирует код с формулой и всегда втыкает в позиции,передаваемые в метод как х и у.То есть xn в данном случае оказывается каким-то чудом равен 261 (ну то есть даже там, где должо получиться другим, то есть на экране с другим разрешением), но при этом w и h именно такие, какого разрешения экран. Ну и икс с игреком ясен пень константами передаются. Почему не считает нормально xn и yn просто не понимаю, мистика какая-то...
Проверяю на разных девайсах, с получением разрешения экрана все точно нормально.

Добавлено через 11 часов 41 минуту
Вопрос снят. Проблема была в int. Всё просто. Всем спасибо=)
0
26.07.2013, 11:35
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.07.2013, 11:35
Помогаю со студенческими работами здесь

Как считает процедура?
Дана программа program Prog; var a,b,c: integer; procedure F(a: integer, var b: integer); ...

Как СКД считает итоги?
14*14 = 196 почему он считает, что 202? отчёт какой-то собственный про среднесписочную...

Как sizeof считает размер?
Есть код программы. Скажите как определить размерность структуры? Дело в том что выдает 4 байта, но...

Как Sleep() считает время ?
Добрый вечер :) Из следующего кода возник один вопрос: void __fastcall...

как зациклить switch, чтобы после того как я допустим ввожу f и он считает циклом for, потом снова просил введите символ
#include <iostream> #include <iomanip> #include <math.h> using namespace std; int main() {...

Как std::cin считает CTRL + C?
Есть код. #include <string> #include <iostream> #include <exception> #include <limits> int...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru