Вверх ↑
Этот топик читают: Гость
Ответов: 3
Рейтинг: 0
#1216: 2015-06-08 16:55:04 ЛС | профиль | цитата
Netspirit, ну вроде gvar-ы правильно теперь работают.
Только вот из самого верхнего поля EditText в gvar1 в потоке не идет ничего. Может я неправильно понимаю работу Андроид..?, и ничего и не должно передаваться в таком варианте.
Тут у меня другой вопрос к тем кто разобрался в работе компонентов из вкладки - "компоновка", ну напишите кто нибудь коротенький туториал, как ими правильно пользоваться?! Авторство я уже подглядел в файлах .ini))
Ну, нехочу автора просить, я его и так уже замучил вопросами )

https://drive.google.com/folderview?id=0B_Ia--LYfZjGfm03WjRBNVE5YkpZSms0TS00NEwtdE1HVy1ERTN3MnpyODdjZWZLcW5ZQWc&usp=sharing
карма: 0

0
Ответов: 4630
Рейтинг: 749
#1217: 2015-06-08 17:14:07 ЛС | профиль | цитата
EditText.onTextChanged ничего не должен выдавать в поток. Не помню, почему я так сделал, то ли в целях оптимизации, то ли не знал как... Бери текст с точки Value.

Суть компоновки в том, чтобы расположить привязанные элементы в нужном виде. Соответственно, в линию по горизонтали/вертикали, в виде таблицы, по абсолютных координатах.
А как располагать компоненты в редакторе формы, чтобы в программе они были в предсказуемом порядке? Ответ: в редакторе формы располагать сверху вниз (согласно свойства Top). Или при равных Top - слева направо. То-есть, хочешь ты разместить компоненты в линию горизонтально. Назначаешь им LayoutLinear (Orientation=Horizontal) и размещаешь компоненты в редакторе один под другим (или с одинаковым Top, но слева направо). Тогда в конечной программе они будут также размещены в линию слева направо.
То же и с остальными макетами.
карма: 26

0
Ответов: 3
Рейтинг: 0
#1218: 2015-06-09 17:23:55 ЛС | профиль | цитата
Частично получается..)
Netspirit, в пакете Delphi практически на каждый компонент по нажатию F1 есть пример использования этого компонента в схеме. В этом пакете такого конечно нет, поэтому хотя бы в двух словах.
Проверил одно и то же приложение на двух телефонах с разным размером экрана - на экране 3.5" дюйма, форма не полностью поместилось, самых нижних элементов вообще не было видно, а на экране 5.5" заняло от верхнего левого угла какую то часть. Часть экрана оставалась пустой. В связи с этим первый вопрос. Есть ли уже у пакета Android способы решения для запуска приложений на устройствах с разными экранами, так что бы они растягивалисьсжимались, короче подгонялись под текущий размер экрана. И второй вопрос.
Можно ли как то средствами пакета перекрывать верхнюю панель, ее вроде Status Bar называют. Например, как в стандартном Андроидном приложении "Камера". При запуске, приложение Камера занимает все свободное место экрана.
Спасибо!
карма: 0

0
Ответов: 4630
Рейтинг: 749
#1219: 2015-06-09 17:37:37 ЛС | профиль | цитата
guest413 писал(а):
подгонялись под текущий размер экрана
Поставь у менеджеров компоновки размер MatchParent, у визуальных компонентов Fixed и настроить Weight. Но в общем нужно ещё работать.
Про верхнюю панель - пока не в курсе.
карма: 26

0
Ответов: 3
Рейтинг: 0
#1220: 2015-06-09 17:53:13 ЛС | профиль | цитата
ок! спасибо.
насчет MatchParent и Fixed понял, вечером проверю.
а вот с Weight(важностью) не очень - кто там у них в схеме самый главный или "важный" будет?
если можно чуть в теории, как ты их сам когда создавал определил?
карма: 0

0
Ответов: 4630
Рейтинг: 749
#1221: 2015-06-09 18:03:04 ЛС | профиль | цитата
Плохо определил. Пока создавал. А хорошо определил на стр. 81 - почитай.
В общем, компоненты занимают доступное место пропорционально Weight. Например, три компонента с Weight = [1, 1, 1] будут иметь одинаковый размер (1/3, 1/3, 1/3), а с [2, 1, 1] первый займет половину экрана, два остальных поровну вторую половину (2/4 , 1/4, 1/4).
карма: 26

0
Ответов: 578
Рейтинг: 14
#1222: 2015-06-19 11:02:26 ЛС | профиль | цитата
а можно создать какой то элемент интерфейса уже во время выполнения программы?
карма: 0

0
Ответов: 4630
Рейтинг: 749
#1223: 2015-06-19 11:44:19 ЛС | профиль | цитата
У нас обычно для этого используются динамические контейнеры - все что внутри можно создавать/удалять по команде. Пока руки не дошли.

Как я понимаю, в HiAsm вообще недоработан механизм динамического создания экземпляров компонентов.
Не очень понятно, как это должно выглядеть на уровне схемы.
Текущий вариант - динамический контейнер, где есть массив экземпляров компонентов.

Предполагаю, мог бы быть такой вариант. У каждого компонента (который реализован классом) есть:
- методы doConstruct/doDestroy
- свойство AutoCreate. Если True - компонент работает как обычно. Иначе для создания экземпляра нужно вызвать doConstruct
- событие onConstruct - выдаёт ссылку на созданный экземпляр компонента. Такую ссылку можно присваивать переменным, передавать по схеме.
Вопрос в том, а как работать с экземпляром компонента, ссылка на который находится в переменной. Тогда в компонент можно добавить верхнюю точку типа TargetObj, и тогда при подключенной точке все методы компонента будут работать именно с этим объектом.
Но это опускает автора схемы "на уровень ниже", добавляя много рутинной работы по контролю за созданными объектами, что отвлекает от основной логики программы.
Можно добавить специальный компонент "Ссылка на объект" в форме менеджера. Тогда вместо протяжки связи к точке TargetObj, можно делать аналогичное свойство с привязкой к менеджеру. А точка использовалась бы, например, при работе с массивами объектов.

карма: 26

0
Ответов: 327
Рейтинг: 5
#1224: 2015-06-20 02:16:14 ЛС | профиль | цитата
Выдает ошибку при компиляции "java.lang.UnsupportedClassVersionError: org/apache/tools/ant/launch/Launcher (Unsupported major.minor version 49.0)"
Версия java стоит последняя "8u45"
как быть?
карма: 0

0
Ответов: 4630
Рейтинг: 749
#1225: 2015-06-21 13:54:13 ЛС | профиль | цитата
Либо установить дополнительно JRE 7x, либо обновить Ant в папке compilerAndroidJavaant отсюда: http://ant.apache.org/bindownload.cgi
карма: 26

0
Ответов: 327
Рейтинг: 5
#1226: 2015-06-22 09:56:00 ЛС | профиль | цитата
Netspirit, спасибо.
Теперь не выдает эту ошибку, но и не начал компилировать apk файл...
вот лог
Подготовка к сборке проекта...
Генерация кода целевого языка
Компоновка проекта...
Command line: Android.exe "C:\Program Files (x86)\HiAsm_AltBuild\Elements\android\code\Project11.java" "C:\Program Files (x86)\HiAsm_AltBuild\Elements\android\code" "C:\Users\Knoot\Desktop\"
Registry key 'Software\JavaSoft\Java Runtime Environment\CurrentVersion'
has value '1.8', but '1.2' is required.
Сборка завершена.

как я понимаю, он требует версию 1.2, но что-то я не могу ее найти

пробовал исправить CurrentVersion в "HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\JavaSoft\Java Runtime Environment" с 1.8 на 1.2, в результате ошибка, та же что и была ранее
карма: 0

0
Ответов: 4630
Рейтинг: 749
#1227: 2015-06-22 10:12:00 ЛС | профиль | цитата
Я не знаю, откуда оно вытащило 1.2, но на 1.7 работает нормально. Попробую посмотреть, что там с версией 1.8.
карма: 26

0
Ответов: 4630
Рейтинг: 749
#1228: 2015-06-24 20:24:02 ЛС | профиль | цитата
Поставил JRE 1.8.0_45 (32bit) на чистую Windows 7 x64, поставил HiAsm и Android - компилируется без проблем.
карма: 26

0
Ответов: 58
Рейтинг: 1
#1229: 2015-07-01 20:29:53 ЛС | профиль | цитата
Почему после компиляции программы создается фаил с расширением .java ?
карма: 0

0
Ответов: 4630
Рейтинг: 749
#1230: 2015-07-01 21:35:41 ЛС | профиль | цитата
На панели HiAsm выбери компилятор 'Android':

карма: 26

0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)