Найти - Пользователи
Полная версия: S60 5th, Python for s60 2.0 и глюки ListBox'a
Начало » Mobile Python » S60 5th, Python for s60 2.0 и глюки ListBox'a
1 2
Usper
Имеется Nokia 5800 (S60 5th, прошивка 40.0.005) с установленным Python for s60 2.0. Столкнулся с тем, что глючит стандартный пример filebrowser, идущий в комплекте с Python Script Shell. Проблема заключается в том, что не перерисовывается содержимое стандартного компонента ListBox при прокрутке. То есть ползунок полосы прокрутки нормально перемещается, но содержимое списка остаётся прежним, до тех пор пока не ткнёшь в какой-нибудь пункт меню. Только тогда этот пункт (единственный) будет перерисован на нужный. При этом получается мешанина из пунктов с разных экранов до тех пор, пока не ткнёшь в каждый пункт на текущем экране. При кинетической прокрутке всё тоже самое при этом ползунок прокрутки плавно перемещается. Написал простенький срипт:
import appuifw 
import e32

def zzz():
appuifw.app.set_exit()

appuifw.app.body=appuifw.Listbox([u"1", u"2", u"3", u"4", u"5", u"6", u"7", u"8", u"9", u"10", u"11"], zzz)
e32.Ao_lock().wait()
глюки те же самые. Что это? На другом форуме владельцы сартфонов на S60 3rd и владельцы самсунгов на S60 5th говорят, что у них всё в порядке. Это у меня личные глюки? Я только начал баловаться с питоном и на предыдущей прошивке ситуацию с ListBox'ом не проверял.
igor.kaist
Нет, это всеобщие глюки, связанные с тем что nokia слегка поторопилась с бекпортом кинетики на 5800….
Usper
Это проблема реализации питона или прошивки? Представители Нокии что-нибудь говорят?
igor.kaist
Скорее всего глюк в прошивке, что то не учли, так как на 31-й прошивке все работало нормально.
Посмотрим что выйдет быстрее, новая версия питона, где этот глюк возможно как то обойдут (в багтрекере питона такой тикет уже есть), или новая версия прошивки, в которой это исправят (PyS60 это проект нокии, значит они как то контактируют).
Лучше конечно в appuifw поправили бы, чтоб работало у юзеров на 40-й прошивке, так как не сразу же бегут обновлять прошивку, некоторые упорно на 10-й даже остаются.
AndreyVN
Вот уже год почти теме.
Воз и ныне там? Может быть, можно этот глюк как-то обойти?
Если прокрутить список и повернуть экран (т.е. весь телефон), то список перерисовывается и выглядит нормально. Но, конечно, вертеть телефон только для обновления списка, также как и тыкать пальцами во все элементы списка… :( Нельзя ли его как-то принудительно перерисовывать?
PyFan
Используйте другую реализацию списка (selection list):
http://mobilenin.com/pys60/resources/selection_list.py
# Copyright (c) 2005 Jurgen Scheible
# This script executes a dialog that allows the users to select
# an item in a list and returns the index (of the list) of the chosen item
# It uses the .selection_list() function of the appuifw module
# appuifw.selection_list(choices=list , search_field=0 or 1)


# import the application user interface framework module
import appuifw

# define the list of items (items must written in unicode! -> put a u in front)
L = [u'cakewalk', u'com-port', u'computer', u'bluetooth', u'mobile', u'screen', u'camera', u'keys']

# create the selection list
index = appuifw.selection_list(choices=L , search_field=1)

# use the result of the selection to trigger some action (here we just print something)
if index == 0:
print "cakewalk was selected"
else:
print "thanks for choosing"


# the search_field=1 (set to 1) enables a search functionality for looking
# up items in the list. IMPORTANT: to activate the find pane
# (search functionality) you need to press a keyboard key when the script
# is executed and the list has appeared on the screen.
# if search_field=0 no search functionality is enabled.
AndreyVN
Спасибо, PyFan!
Все заработало :)
ReaL_HarDCorE
Блин, столкнулся с этой же проблемой. Только selection_list не вариант, потому что мне нужно создать 2х уровневый список с иконкой. Глючит и listbox и listbox2, как в appuifw так и в appuifw2. Только nokia 5530… Неужели не решили эту проблему?
R.Ll.S.h57
ReaL_HarDCorE
Неужели не решили эту проблему?
Переписать appuifw :)
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB