решений много, но как это делают профи ?

Интерфейс, диалоги, темы, стили, меню
Ответить
Аватара пользователя
IgNa
Сообщения: 345
Зарегистрирован: 30 сен 2013, 12:18

решений много, но как это делают профи ?

Сообщение IgNa » 06 фев 2014, 12:45

Уже второй раз сталкиваюсь с проблемой когда есть фоновая картинка и необходимо чтобы textview располагался в точности там где это нужно так чтобы это не шло в разрез с фоном, причем на разных девайсах.

К примеру фон - это изображение поздравительной грамоты
А элемент, который надо чтобы на любом девайсе был в нужном месте - это textview
Скриншот для наглядности не прилагаю к сожалению


На текущий момент решаю эту задачу посредством вычисления размеров экрана и выставляя LayoutParamsдля textview
где Left будет ширина экрана деленная на определенное число
ну и Top аналогично - height экрана поделенное на опред число.

А как делают профессионалы когда надо очень точно разместить какой-либо элемент относительно картинки-фона
на разных девайсах ?
Изображение

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: решений много, но как это делают профи ?

Сообщение rezak90 » 06 фев 2014, 12:54

IgNa писал(а):Скриншот для наглядности не прилагаю к сожалению
Ответ для наглядности не прилагаю к сожалению.
R.id.team
Политика на форуме запрещена

Аватара пользователя
Mikhail_dev
Сообщения: 2386
Зарегистрирован: 09 янв 2012, 14:45
Откуда: Самара

Re: решений много, но как это делают профи ?

Сообщение Mikhail_dev » 06 фев 2014, 13:34

Не знаю как профессионалы делают, но в чем проблема сделать через RelativeLayout? У него 100500 методов для нереальной гибкости в расположении где угодно и когда угодно.

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: решений много, но как это делают профи ?

Сообщение Foenix » 06 фев 2014, 15:00

если хочешь позиционировать относительно фона, например, в грамоту вписывать имя, то имхо нужно нарезать основное изображение на части (как делаеют при составлении html) и например в табличный лэйаут поместить.
Как делают профи не знаю.
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Аватара пользователя
anber
Сообщения: 584
Зарегистрирован: 10 июн 2013, 15:05
Откуда: UA

Re: решений много, но как это делают профи ?

Сообщение anber » 06 фев 2014, 15:18

Foenix писал(а):если хочешь позиционировать относительно фона, например, в грамоту вписывать имя, то имхо нужно нарезать основное изображение на части (как делаеют при составлении html) и например в табличный лэйаут поместить.
Как делают профи не знаю.
У меня на заре моих занятий андроидом было веселое задание:
есть план стадиона, и нужно подсвечивать на нем выбранный из списка сектор, коих было 102 штуки.
Личные сообщения с просьбой ответить на форуме или написать программу я просто удаляю, если я в хорошем настроении. Если в плохом добавляю автора в черный список. По любым другим вопросам feel free to write to me.

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: решений много, но как это делают профи ?

Сообщение Foenix » 06 фев 2014, 15:30

и? дальше можно рассказать? :)
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Аватара пользователя
anber
Сообщения: 584
Зарегистрирован: 10 июн 2013, 15:05
Откуда: UA

Re: решений много, но как это делают профи ?

Сообщение anber » 06 фев 2014, 15:44

В общем у меня была бекграунд картинка стадиона с параметрами fitXY, и картинка с меркером.
Я вручную в редакторе еклипсы выставил маркер при помощи веса для каждой из 102 позиций и захардкодил, массив весов из 102 значений.
Потом iOS-ники меня упрашивали выдать формулу по которой я преобразовую номер сектора в координаты метки :lol:

Выглядело примерно так:

Код: Выделить всё

public class WeightUtils {
	
	// @formatter:off	
	
	private static final double m[][] = { 
		{ 0.68, 0.80 }, 
		{ 0.655, 0.80 }, 
		{ 0.635, 0.80 }, 
		{ 0.425, 0.8 }, 
		{ 0.4, 0.8 }, 
		{ 0.38, 0.8 },
		{ 0.3, 0.76 },
		{ 0.28, 0.73 },
		{ 0.28, 0.7 },
		{ 0.28, 0.66 },
		{ 0.28, 0.62 },
		{ 0.28, 0.56 },
		{ 0.28, 0.52 },
		{ 0.28, 0.47 },
		{ 0.28, 0.42 },
		{ 0.28, 0.37 },
		{ 0.28, 0.33 },
		{ 0.28, 0.29 },
		{ 0.32, 0.26 },
		{ 0.36, 0.25 },
		{ 0.4, 0.25 },
		{ 0.45, 0.25 },
		{ 0.51, 0.25 },
		{ 0.56, 0.25 },
		{ 0.62, 0.25 },
		{ 0.66, 0.25 },
		{ 0.71, 0.25 },
		{ 0.79, 0.25 },
		{ 0.79, 0.28 },
		{ 0.79, 0.32 },
		{ 0.79, 0.36 },
		{ 0.79, 0.41 },
		{ 0.79, 0.46 },
		{ 0.79, 0.51 },
		{ 0.79, 0.55 },
		{ 0.79, 0.60 },
		{ 0.79, 0.65 },
		{ 0.79, 0.69 },
		{ 0.79, 0.73 },
		{ 0.77, 0.76 },
		{ 0.66, 0.75 },
		{ 0.59, 0.75 },
		{ 0.54, 0.75 },
		{ 0.48, 0.75 },
		{ 0.40, 0.75 },
		{ 0.13, 0.72 },
		{ 0.13, 0.69 },
		{ 0.13, 0.62 },
		{ 0.13, 0.58 },
		{ 0.13, 0.52 },
		{ 0.13, 0.46 },
		{ 0.13, 0.39 },
		{ 0.13, 0.35 },
		{ 0.13, 0.30 },
		{ 0.85, 0.335 },
		{ 0.85, 0.35 },
		{ 0.85, 0.37 },
		{ 0.85, 0.39 },
		{ 0.85, 0.41 },
		{ 0.85, 0.43 },
		{ 0.85, 0.595 },
		{ 0.85, 0.61 },
		{ 0.85, 0.63 },
		{ 0.85, 0.65 },
		{ 0.85, 0.67 },
		{ 0.85, 0.685 },
		{ 0.91, 0.32 },
		{ 0.91, 0.34 },
		{ 0.91, 0.36 },
		{ 0.91, 0.38 },
		{ 0.91, 0.39 },
		{ 0.91, 0.41 },
		{ 0.91, 0.43 },
		{ 0.91, 0.45 },
		{ 0.91, 0.47 },
		{ 0.91, 0.48 },
		{ 0.91, 0.50 },
		{ 0.91, 0.52 },
		{ 0.91, 0.53 },
		{ 0.91, 0.55 },
		{ 0.91, 0.57 },
		{ 0.91, 0.59 },
		{ 0.91, 0.62 },
		{ 0.91, 0.63 },
		{ 0.91, 0.64 },
		{ 0.91, 0.66 },
		{ 0.91, 0.68 },
		{ 0.91, 0.695 },
		{ 0, 0 }
	};
	
	// @formatter:on	
	
	public static WeightPoint getWeight(int pos) {
		WeightPoint result = null;
		try {
			double x = m[pos][0];
			x += 0.02;
			double y = m[pos][1];
			result = new WeightPoint((float) x, (float) y);
		} catch (Exception e) {
			Log.e("WeightUtils", e.getMessage());
		}
		return result;
	}

Код: Выделить всё

			public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
				try {
					if (position != 0) {
						imgMarker.setVisibility(View.VISIBLE);
						WeightPoint point = WeightUtils.getWeight(position - 1);
						layoutX.setLayoutParams(new LinearLayout.LayoutParams(0, LayoutParams.FILL_PARENT, point.getX()));
						LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT, 0, point.getY());
						lp.gravity = Gravity.RIGHT | Gravity.BOTTOM;
						layoutY.setLayoutParams(lp);
					} else {
						imgMarker.setVisibility(View.GONE);
					}
				} catch (Exception e) {
					Log.e("StadiumActivity", e.getMessage());
				}
			}
			
Личные сообщения с просьбой ответить на форуме или написать программу я просто удаляю, если я в хорошем настроении. Если в плохом добавляю автора в черный список. По любым другим вопросам feel free to write to me.

Аватара пользователя
IgNa
Сообщения: 345
Зарегистрирован: 30 сен 2013, 12:18

Re: решений много, но как это делают профи ?

Сообщение IgNa » 06 фев 2014, 17:03

m090050 писал(а):Не знаю как профессионалы делают, но в чем проблема сделать через RelativeLayout? У него 100500 методов для нереальной гибкости в расположении где угодно и когда угодно.
Меня заинтересовал твой ответ, он точно подходит под мой вопрос, теперь когда стало ещё более наглядно, то что требуется ?)))
Я люблю гибкость, можешь что то ближе к телу как говорится намекнуть)) плз
Последний раз редактировалось IgNa 06 фев 2014, 17:06, всего редактировалось 1 раз.
Изображение

Аватара пользователя
IgNa
Сообщения: 345
Зарегистрирован: 30 сен 2013, 12:18

Re: решений много, но как это делают профи ?

Сообщение IgNa » 06 фев 2014, 17:05

ЦЫ: профессионалы для меня все - кто круче меня прокачен по скилу программированию под Андроид, то есть почти вы все), кроме altwin)
Последний раз редактировалось IgNa 06 фев 2014, 17:11, всего редактировалось 2 раза.
Изображение

Аватара пользователя
altwin
Сообщения: 1951
Зарегистрирован: 13 ноя 2013, 14:46

Re: решений много, но как это делают профи ?

Сообщение altwin » 06 фев 2014, 17:07

IgNa писал(а): А как делают профессионалы когда надо очень точно разместить какой-либо элемент относительно картинки-фона
на разных девайсах ?
Примерно так: https://play.google.com/store/apps/deta ... .pinterest
вообще в маркете полно приложений от профессионалов, код которых доступен на github, потому то они и профессионалы, что делают по разному, просто делают ;)
Изображение

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: решений много, но как это делают профи ?

Сообщение Foenix » 06 фев 2014, 20:17

IgNa писал(а):ЦЫ: профессионалы для меня все - кто круче меня прокачен по скилу программированию под Андроид, то есть почти вы все), кроме altwin)
не поняла :mrgreen:
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Аватара пользователя
altwin
Сообщения: 1951
Зарегистрирован: 13 ноя 2013, 14:46

Re: решений много, но как это делают профи ? ;)

Сообщение altwin » 06 фев 2014, 20:48

Foenix писал(а):
IgNa писал(а):ЦЫ: профессионалы для меня все - кто круче меня прокачен по скилу программированию под Андроид, то есть почти вы все), кроме altwin)
не поняла :mrgreen:
Я конечно не могу судить исходя из слов:
"для меня"
, но всеже:
Профессиона́л — человек, сделавший определённое занятие своей профессией; человек, ставший в какой-либо области деятельности, специалистом, подготовленный для работы в определённой сфере специалист, имеющий навыки, квалификацию, а при необходимости и допуск к выполнению обязанностей по своей специальности. Многие путают понятие профессиона́ла с мастером. Не все профессионалы могут быть мастерами своего дела, точно так же как и Мастер в определенной области деятельности не всегда является профессионалом в этой же области деятельности.
Наверно человек не хотел оскорбить Мастера, называя его профессионалом ;) :mrgreen:
Или так:
Базовые характеристики профессионала, сформулированные профессором Гарвардского университета Говардом Гарднером и президентом Фонда Карнеги по улучшению преподавания Ли Шульманом:
1.Приверженность интересам потребителей и общества в целом.
2.Наличие необходимых теоретических знаний.
3.Владение необходимыми для данной профессии навыками и приемами.
4.Умение формулировать целостные суждения в условиях этической неопределенности.
5.Системный подход к обучению.
6.Участие в развитии профессионального сообщества, отвечающего за качество практики и образования в конкретной профессиональной области
Первый же пункт меня напрягает, так что IgNa прав на 100% :)

P.S. а если серьезно, наверно IgNa за программирование и android просто получает больше зарплату, все ведь относительно ;)
Изображение

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: решений много, но как это делают профи ?

Сообщение rezak90 » 06 фев 2014, 23:46

IgNa писал(а):Я люблю гибкость, можешь что то ближе к телу как говорится намекнуть)) плз
намекаю... "нагибайся" :lol: :lol: :lol:
R.id.team
Политика на форуме запрещена

Аватара пользователя
IgNa
Сообщения: 345
Зарегистрирован: 30 сен 2013, 12:18

Re: решений много, но как это делают профи ?

Сообщение IgNa » 07 фев 2014, 02:41

rezak90 писал(а):
IgNa писал(а):Я люблю гибкость, можешь что то ближе к телу как говорится намекнуть)) плз
намекаю... "нагибайся" :lol: :lol: :lol:
Как ты мог спутать себя и m090050) Такие разные по душе люди
Изображение

Аватара пользователя
IgNa
Сообщения: 345
Зарегистрирован: 30 сен 2013, 12:18

Re: решений много, но как это делают профи ?

Сообщение IgNa » 07 фев 2014, 02:49

m090050, твой ответ слишком маленький) Мог бы ты его немного увеличить, а то до меня не очень хорошо доходит ?
Изображение

Аватара пользователя
Mikhail_dev
Сообщения: 2386
Зарегистрирован: 09 янв 2012, 14:45
Откуда: Самара

Re: решений много, но как это делают профи ?

Сообщение Mikhail_dev » 07 фев 2014, 14:20

Я советую тебе придерживаться манер, которые приняты в обществе, и конкретно тут. Мне сугубо неприятно читать про какую-то фигню от человека, которому вдобавок и помогаешь. Свои гейские замашки, оставь при себе.
Если тебя мой ответ не устроил, то советую почитать заметку, которая идет первой в моей подписи. На этом моя помощь заканчивается.

Аватара пользователя
IgNa
Сообщения: 345
Зарегистрирован: 30 сен 2013, 12:18

Re: решений много, но как это делают профи ?

Сообщение IgNa » 07 фев 2014, 19:26

)))))) каждый видит то что хочет видеть,
спасибо за помощь, пока)
Изображение

Аватара пользователя
altwin
Сообщения: 1951
Зарегистрирован: 13 ноя 2013, 14:46

Re: решений много, но как это делают профи ?

Сообщение altwin » 07 фев 2014, 20:14

IgNa писал(а):)))))) каждый видит то что хочет видеть,
спасибо за помощь, пока)
я конечно дико извиняюсь, но НЕ все тут прихавали что -то и некоторые видят то, что есть на самом деле, а не то, что им хочется или не хочется... Вы судя по всему в каком то своем мире живете и вам там хорошо, ну так это главное, что вам там нравится, мнение о вас остальных -это такая мелочь, не обращайте внимание ;)
Изображение

Аватара пользователя
IgNa
Сообщения: 345
Зарегистрирован: 30 сен 2013, 12:18

Re: решений много, но как это делают профи ?

Сообщение IgNa » 08 фев 2014, 05:01

Сейчас кто то чего то говорил? :lol:
Не обращай внимания это юмор )
Изображение

Ответить