- Главная
- Форум
- Программирование
- Программирование под Android
- Программируем на смартфоне » Страница 18
Программируем на смартфоне » Страница 18
-Программирование под Android
Атрибуты объекта app Показать / Скрыть текст
Вот еще пара диалогов. Пусть будут Показать / Скрыть текст
function OnStart() {
lay = app.CreateLayout( "linear", "VCenter,FillXY" );
for(item in {'About':null, 'Input text':null}) {
var btn = app.CreateButton(item, 0.8, 0.1, 'alum');
btn.SetTextSize(16);
btn.SetOnTouch(OnTouch);
lay.AddChild(btn);
}
app.AddLayout( lay );
}
function OnTouch() {
((this.GetText()) == 'About' ? About : InputText)();
}
function About(){
Dialog = app.CreateDialog('О программе');
var layDlg = app.CreateLayout("linear", "vertical,fillxy" );
layDlg.SetBackGradient('#111111', '#333333');
layDlg.SetPadding(0.02, 0, 0.02, 0.02);
Dialog.AddLayout(layDlg);
var text = "<font color='#eeeedd'><b>Object</b> " +
"v.0.1.<br/>Программа для строителей-отделочников." +
"<br/>Разработчик: <b>dimy44</b>.<br/><br/>Для замечаний, " +
"пожеланий итп:<br/>мой</font> <a href='https://dimonvideo.ru/0/name/dimy44'" +
">профиль</a> <font color='#eeeedd'>на DimonVideo.ru," +
"<br/>мой</font> <a href='mailto:dimy4496@gmail.com?" +
"subject=Программа Object'>E-mail</a><font color='#eeeedd'>.</font>";
var txtDlg = app.CreateText(text, 0.9, -1, "Html,Link");
txtDlg.SetTextSize(16);
layDlg.AddChild(txtDlg);
Dialog.Show();
}
function InputText() {
Dialog = app.CreateDialog("Введите текст:");
var layDlg = app.CreateLayout("linear", "vertical,fillxy" );
layDlg.SetBackGradient('#111111', '#333333');
layDlg.SetPadding(0.02, 0, 0.02, 0.01);
Dialog.AddLayout(layDlg);
edt = app.CreateTextEdit('', 0.9, -1);
edt.SetCursorPos(item.length);
var btn = app.CreateButton("OK", 0.5, -1, 'alum');
btn.SetOnTouch(resultInputText);
btn.SetMargins(0, 0.01, 0, 0);
layDlg.AddChild(edt);
layDlg.AddChild(btn);
Dialog.Show();
}
function resultInputText() {
Dialog.Hide();
var text = edt.GetText();
app.ShowPopup(text);
}
-------------
добавлено в 20.58: Щас пробовал упаковать скрипт, где на кнопки картинки налепил, тег
"<img src='img/wallpaper.png'>из дс все работает, а упакованный- нет, квадраты вместо картинок.
пс img это папка в проекте где картинки. Блин. Рождество. Вроде не сильно пьяный, полез исправлять выявленные, создал кучу новых. Завтра.
CreateListDialog и CreateListView, не указанные в документации ДС Показать / Скрыть текст
function OnStart() {
lay = app.CreateLayout( "linear", "VCenter,FillXY" );
for(item in {'ListDialog':null, 'ListView':null}) {
var btn = app.CreateButton(item, 0.8, 0.1, 'alum');
btn.SetTextSize(16);
btn.SetOnTouch(OnTouch);
lay.AddChild(btn);
}
app.AddLayout( lay );
}
function OnTouch() {
((this.GetText()) == 'ListDialog' ? ListDialog : ListView)();
}
function ListDialog(){
itemsListDialog = [];
for(var i=1; i<6; i++) {
var item = 'Item ListDialog ' + i;
itemsListDialog.push(item);
};
var dialog = app.CreateListDialog('ListDialog', itemsListDialog);
dialog.SetOnTouch(selectItemDialog);
lay.AddChild(dialog);
}
function ListView() {
itemsListView = [];
for(var i=1; i<201; i++) {
var item = 'Item ListViev ' + i;
itemsListView.push(item);
};
var dialog = app.CreateListView(itemsListView, 'ListView');
dialog.SetOnTouch(selectItemView);
lay.AddChild(dialog);
}
function selectItemDialog(text) {
app.ShowPopup(text+', index= '+itemsListDialog.indexOf(text));
}
function selectItemView(text) {
app.ShowPopup(text+', index= '+itemsListView.indexOf(text));
}
-------------
добавлено в 10.10: а в том примере, где я scroll приводил, в скролле параметр Y надо -1 ставить, иначе может нижний элемент подобрезаться.
-------------
добавлено в 11.30: Не пойму. Есть layout horizontal. Слева текст, справа иконка. layout по оси Y подстраивается под высоту самого высокого элемента. Текст сейчас меньше по высоте, и распологается вверху, а как его расположить в центре по высоте в layout'е ? Ну чтоб если мысленно прочертить линию вдоль центра букв текста по горизонтали, то она бы уперлась в центр иконки
Жень, да, слева текст, справа кнопка. Не могу текст посередине по оси у расположить, он в самом верху оказывается. Можно конечно былоб просчитать высоту лейаута, и задать SetMargins, но загвоздка в том, что пока не сделаешь app.AddLayout, высоту не узнать. Эт получится что изменения будут происходить на глазах у пользователя. Хотелось бы сразу расположить до прорисовки. Ищу варианты, как оформить стартовый экран, четыре пункта и две кнопки вверху. Щас временно эти четыре пункта- кнопки огромные, почти на 1/4 экрана по высоте, некрасиво, тем более на планшете.
- «
- 1
- 2
- --
- 17
- 18
- 19
- --
- 206
- 207
- »