Languages

Menu
Sites
Language
TableViewItem with layout in 2.2.1

Since 2.2.1 release we have a strange behaviour with TableViewItem constructed with layout (RelativeLayout, HorizontalBoxLayout, ...):

E/Tizen::Ui( 4868): result Tizen::Ui::_Layout::Layout::GetItemWidthMatchMode(const Tizen::Ui::_Layout::LayoutItem&, Tizen::Ui::_Layout::LayoutMatchMode&) const(222) > [E_INVALID_ARG] Control dose not belong to layout.
E/Tizen::Ui( 4868): result Tizen::Ui::_Layout::Layout::GetItemHeightMatchMode(const Tizen::Ui::_Layout::LayoutItem&, Tizen::Ui::_Layout::LayoutMatchMode&) const(249) > [E_INVALID_ARG] Control dose not belong to layout.
E/Tizen::Ui( 4868): result Tizen::Ui::_Layout::Layout::GetItemWidthMatchMode(const Tizen::Ui::_Layout::LayoutItem&, Tizen::Ui::_Layout::LayoutMatchMode&) const(222) > [E_INVALID_ARG] Control dose not belong to layout.
E/Tizen::Ui( 4868): result Tizen::Ui::_Layout::Layout::GetItemHeightMatchMode(const Tizen::Ui::_Layout::LayoutItem&, Tizen::Ui::_Layout::LayoutMatchMode&) const(249) > [E_INVALID_ARG] Control dose not belong to layout.
E/Tizen::Ui( 4868): result Tizen::Ui::_Layout::Layout::GetItemWidthMatchMode(const Tizen::Ui::_Layout::LayoutItem&, Tizen::Ui::_Layout::LayoutMatchMode&) const(222) > [E_INVALID_ARG] Control dose not belong to layout.
E/Tizen::Ui( 4868): result Tizen::Ui::_Layout::Layout::GetItemHeightMatchMode(const Tizen::Ui::_Layout::LayoutItem&, Tizen::Ui::_Layout::LayoutMatchMode&) const(249) > [E_INVALID_ARG] Control dose not belong to layout.
E/Tizen::Ui( 4868): result Tizen::Ui::_Layout::Layout::GetItemWidthMatchMode(const Tizen::Ui::_Layout::LayoutItem&, Tizen::Ui::_Layout::LayoutMatchMode&) const(222) > [E_INVALID_ARG] Control dose not belong to layout.
E/Tizen::Ui( 4868): result Tizen::Ui::_Layout::Layout::GetItemHeightMatchMode(const Tizen::Ui::_Layout::LayoutItem&, Tizen::Ui::_Layout::LayoutMatchMode&) const(249) > [E_INVALID_ARG] Control dose not belong to layout.

 

How to reproduce – implement ITableViewItemProvider with basic CreateItem logic:

Label *pSomeControl = new Label();
pSomeControl->Construct(someRect);

RelativeLayout itemLayout;
itemLayout.Construct();

pItem->Construct(itemLayout, Dimension(itemWidth, itemHeight));
pItem->AddControl(pSomeControl);

pItemlayout->SetRelation(*pSomeControl, pItem, RECT_EDGE_RELATION_LEFT_TO_LEFT); // or any other relation type

The actual problem is a millions of error messages in logs (on each redraw?) and they are written in UI thread. Scrolling of this kind TableView becomes laggy. It was OK in 2.2.0 release (there were no such errors).

Here is a little demo for the issue: https://dl.dropboxusercontent.com/u/931077/issuedemo.tag.gz

Edited by: Brock Boland on 17 Mar, 2014 Reason: Paragraph tags added automatically from tizen_format_fix module.

Responses

1 Replies
muditha murthy

I was not able to open your attachment link, but i tried the uicontrols sample and yes there were many error logs generated eventhough the application was working fine.