[flexcoders] Re: Tilelist in Flex 2 - what to use instead of getItemAt()?
sorry i didn't respond to your reply..slipped thru. continuing from Alex, and having a closer look at your original post ..flexcoders is so busy and sometimes i just look at the title and give an answer...i'll be a good boy and read the question properly next time. what you actually want is to use the TileList.indexToItemRenderer() function. that gives u a reference to the itemrenderer eg. myTiles.indexToItemRenderer(1)[testFunction](); //or TestComonent(myTiles.indexToItemRenderer(1)).testFunction(); //or var object1:TestComponent = myTiles.indexToItemRenderer(1) as TestComponent; object1.testFunction(); regards Bod --- In [EMAIL PROTECTED], Alex Harui [EMAIL PROTECTED] wrote: Erin, It looks like your array: var arrTest:Array = [1,2,3,4]; just contains numbers. IList(myTiles.dataProvider).getItemAt(1) should return 2; 2 is just a number so you it doesn't have a testFunction Did you intend to pass 2 into testFunction? That would be: testFunction(IList(myTiles.dataProvider).getItemAt(1)); One good way to debug this is to start storing parts of the expression in temporary variables. -Alex From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of erinwyher Sent: Thursday, April 12, 2007 10:41 AM To: [EMAIL PROTECTED] Subject: [flexcoders] Re: Tilelist in Flex 2 - what to use instead of getItemAt()? Thanks for the suggestion. My new error is: value is not a function. This comes up on this new line: IList(myTiles.dataProvider).getItemAt(1).testFunction(); -Erin --- In [EMAIL PROTECTED] mailto:flexcoders% 40yahoogroups.com , craig.drabik craig.drabik@ wrote: Try using an ArrayCollection for your data provider instead of a simple array. --- In [EMAIL PROTECTED] mailto:flexcoders%40yahoogroups.com , erinwyher erinwyher@ wrote: Thanks for the suggestion, but it doesn't work :(. Do you need the latest version of Flex 2 for that to work? I didn't install the latest upgrade (2.1 I believe). When I tried it, I got the following error. TypeError: Error #1006: value is not a function. at test/clickedList() at test/___Button1_click() Also, in the debugger, IList(myTiles.dataProvider) cannot be evaluated, and neither can IList(myTiles.dataProvider).getItemAt (any_number) Any more ideas? I really need help with this and I appreciate any suggestions! Thank you. -Erin --- In [EMAIL PROTECTED] mailto:flexcoders%40yahoogroups.com , bhaq1972 mbhaque@ wrote: the getItemAt() function is available but not like the flex 1.5 way. you can do the following import mx.collections.IList; public function clickedList():void { //myTiles.getItemAt(1).testFunction(); IList(myTiles.dataProvider).getItemAt(1).testFunction(); etc --- In [EMAIL PROTECTED] mailto:flexcoders%40yahoogroups.com , erinwyher erinwyher@ wrote: In Flex 1.5, you use getItemAt() to call functions from the children of the TileList, but that method no longer exists in F2. Any suggestions to do this? Here is some sample code: test.mxml: ?xml version=1.0 encoding=utf-8? mx:Application xmlns:mx=http://www.adobe.com/2006/mxml http://www.adobe.com/2006/mxml xmlns:view=view.* layout=absolute creationComplete=doInit() mx:Script ![CDATA[ public var arrTest:Array; public function doInit():void { arrTest = [1,2,3,4]; myTiles.dataProvider = arrTest; } public function clickedList():void { //myTiles.getItemAt(1).testFunction (); //I want to call a function here for a specific set of tiles... how do I do that without getItemAt? //Note: getChildAt does not work either } ]] /mx:Script mx:Button label=click me click=clickedList()/ mx:TileList id=myTiles width=660 itemRenderer=view.TestComponent/ /mx:Application TestComponent.mxml ?xml version=1.0 encoding=utf-8? mx:Canvas xmlns:mx=http://www.adobe.com/2006/mxml http://www.adobe.com/2006/mxml width=40 height=30 backgroundColor=#FF3366 mx:Script ![CDATA[ import mx.controls.Alert; public function testFunction():void { Alert.show('hi'); } ]] /mx:Script /mx:Canvas
[flexcoders] Re: Tilelist in Flex 2 - what to use instead of getItemAt()?
Bod, thank you thank you thank you!!! This works beautifully. And just in time for our Beta test today. :) -Erin --- In [EMAIL PROTECTED], bhaq1972 [EMAIL PROTECTED] wrote: sorry i didn't respond to your reply..slipped thru. continuing from Alex, and having a closer look at your original post ..flexcoders is so busy and sometimes i just look at the title and give an answer...i'll be a good boy and read the question properly next time. what you actually want is to use the TileList.indexToItemRenderer() function. that gives u a reference to the itemrenderer eg. myTiles.indexToItemRenderer(1)[testFunction](); //or TestComonent(myTiles.indexToItemRenderer(1)).testFunction(); //or var object1:TestComponent = myTiles.indexToItemRenderer(1) as TestComponent; object1.testFunction(); regards Bod --- In [EMAIL PROTECTED], Alex Harui aharui@ wrote: Erin, It looks like your array: var arrTest:Array = [1,2,3,4]; just contains numbers. IList(myTiles.dataProvider).getItemAt(1) should return 2; 2 is just a number so you it doesn't have a testFunction Did you intend to pass 2 into testFunction? That would be: testFunction(IList(myTiles.dataProvider).getItemAt(1)); One good way to debug this is to start storing parts of the expression in temporary variables. -Alex From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of erinwyher Sent: Thursday, April 12, 2007 10:41 AM To: [EMAIL PROTECTED] Subject: [flexcoders] Re: Tilelist in Flex 2 - what to use instead of getItemAt()? Thanks for the suggestion. My new error is: value is not a function. This comes up on this new line: IList(myTiles.dataProvider).getItemAt(1).testFunction(); -Erin --- In [EMAIL PROTECTED] mailto:flexcoders% 40yahoogroups.com , craig.drabik craig.drabik@ wrote: Try using an ArrayCollection for your data provider instead of a simple array. --- In [EMAIL PROTECTED] mailto:flexcoders%40yahoogroups.com , erinwyher erinwyher@ wrote: Thanks for the suggestion, but it doesn't work :(. Do you need the latest version of Flex 2 for that to work? I didn't install the latest upgrade (2.1 I believe). When I tried it, I got the following error. TypeError: Error #1006: value is not a function. at test/clickedList() at test/___Button1_click() Also, in the debugger, IList(myTiles.dataProvider) cannot be evaluated, and neither can IList(myTiles.dataProvider).getItemAt (any_number) Any more ideas? I really need help with this and I appreciate any suggestions! Thank you. -Erin --- In [EMAIL PROTECTED] mailto:flexcoders%40yahoogroups.com , bhaq1972 mbhaque@ wrote: the getItemAt() function is available but not like the flex 1.5 way. you can do the following import mx.collections.IList; public function clickedList():void { //myTiles.getItemAt(1).testFunction(); IList(myTiles.dataProvider).getItemAt(1).testFunction(); etc --- In [EMAIL PROTECTED] mailto:flexcoders%40yahoogroups.com , erinwyher erinwyher@ wrote: In Flex 1.5, you use getItemAt() to call functions from the children of the TileList, but that method no longer exists in F2. Any suggestions to do this? Here is some sample code: test.mxml: ?xml version=1.0 encoding=utf-8? mx:Application xmlns:mx=http://www.adobe.com/2006/mxml http://www.adobe.com/2006/mxml xmlns:view=view.* layout=absolute creationComplete=doInit() mx:Script ![CDATA[ public var arrTest:Array; public function doInit():void { arrTest = [1,2,3,4]; myTiles.dataProvider = arrTest; } public function clickedList():void { //myTiles.getItemAt(1).testFunction (); //I want to call a function here for a specific set of tiles... how do I do that without getItemAt? //Note: getChildAt does not work either } ]] /mx:Script mx:Button label=click me click=clickedList()/ mx:TileList id=myTiles width=660 itemRenderer=view.TestComponent/ /mx:Application TestComponent.mxml ?xml version=1.0 encoding=utf-8? mx:Canvas xmlns:mx=http://www.adobe.com/2006/mxml http://www.adobe.com/2006/mxml width=40 height=30 backgroundColor=#FF3366 mx:Script ![CDATA[ import mx.controls.Alert; public function testFunction():void { Alert.show('hi'); } ]] /mx:Script /mx:Canvas
[flexcoders] Re: Tilelist in Flex 2 - what to use instead of getItemAt()?
Thanks for the suggestion. My new error is: value is not a function. This comes up on this new line: IList(myTiles.dataProvider).getItemAt(1).testFunction(); -Erin --- In [EMAIL PROTECTED], craig.drabik [EMAIL PROTECTED] wrote: Try using an ArrayCollection for your data provider instead of a simple array. --- In [EMAIL PROTECTED], erinwyher erinwyher@ wrote: Thanks for the suggestion, but it doesn't work :(. Do you need the latest version of Flex 2 for that to work? I didn't install the latest upgrade (2.1 I believe). When I tried it, I got the following error. TypeError: Error #1006: value is not a function. at test/clickedList() at test/___Button1_click() Also, in the debugger, IList(myTiles.dataProvider) cannot be evaluated, and neither can IList(myTiles.dataProvider).getItemAt(any_number) Any more ideas? I really need help with this and I appreciate any suggestions! Thank you. -Erin --- In [EMAIL PROTECTED], bhaq1972 mbhaque@ wrote: the getItemAt() function is available but not like the flex 1.5 way. you can do the following import mx.collections.IList; public function clickedList():void { //myTiles.getItemAt(1).testFunction(); IList(myTiles.dataProvider).getItemAt(1).testFunction(); etc --- In [EMAIL PROTECTED], erinwyher erinwyher@ wrote: In Flex 1.5, you use getItemAt() to call functions from the children of the TileList, but that method no longer exists in F2. Any suggestions to do this? Here is some sample code: test.mxml: ?xml version=1.0 encoding=utf-8? mx:Application xmlns:mx=http://www.adobe.com/2006/mxml; xmlns:view=view.* layout=absolute creationComplete=doInit() mx:Script ![CDATA[ public var arrTest:Array; public function doInit():void { arrTest = [1,2,3,4]; myTiles.dataProvider = arrTest; } public function clickedList():void { //myTiles.getItemAt(1).testFunction (); //I want to call a function here for a specific set of tiles... how do I do that without getItemAt? //Note: getChildAt does not work either } ]] /mx:Script mx:Button label=click me click=clickedList()/ mx:TileList id=myTiles width=660 itemRenderer=view.TestComponent/ /mx:Application TestComponent.mxml ?xml version=1.0 encoding=utf-8? mx:Canvas xmlns:mx=http://www.adobe.com/2006/mxml; width=40 height=30 backgroundColor=#FF3366 mx:Script ![CDATA[ import mx.controls.Alert; public function testFunction():void { Alert.show('hi'); } ]] /mx:Script /mx:Canvas
RE: [flexcoders] Re: Tilelist in Flex 2 - what to use instead of getItemAt()?
Erin, It looks like your array: var arrTest:Array = [1,2,3,4]; just contains numbers. IList(myTiles.dataProvider).getItemAt(1) should return 2; 2 is just a number so you it doesn't have a testFunction Did you intend to pass 2 into testFunction? That would be: testFunction(IList(myTiles.dataProvider).getItemAt(1)); One good way to debug this is to start storing parts of the expression in temporary variables. -Alex From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of erinwyher Sent: Thursday, April 12, 2007 10:41 AM To: [EMAIL PROTECTED] Subject: [flexcoders] Re: Tilelist in Flex 2 - what to use instead of getItemAt()? Thanks for the suggestion. My new error is: value is not a function. This comes up on this new line: IList(myTiles.dataProvider).getItemAt(1).testFunction(); -Erin --- In [EMAIL PROTECTED] mailto:flexcoders%40yahoogroups.com , craig.drabik [EMAIL PROTECTED] wrote: Try using an ArrayCollection for your data provider instead of a simple array. --- In [EMAIL PROTECTED] mailto:flexcoders%40yahoogroups.com , erinwyher erinwyher@ wrote: Thanks for the suggestion, but it doesn't work :(. Do you need the latest version of Flex 2 for that to work? I didn't install the latest upgrade (2.1 I believe). When I tried it, I got the following error. TypeError: Error #1006: value is not a function. at test/clickedList() at test/___Button1_click() Also, in the debugger, IList(myTiles.dataProvider) cannot be evaluated, and neither can IList(myTiles.dataProvider).getItemAt(any_number) Any more ideas? I really need help with this and I appreciate any suggestions! Thank you. -Erin --- In [EMAIL PROTECTED] mailto:flexcoders%40yahoogroups.com , bhaq1972 mbhaque@ wrote: the getItemAt() function is available but not like the flex 1.5 way. you can do the following import mx.collections.IList; public function clickedList():void { //myTiles.getItemAt(1).testFunction(); IList(myTiles.dataProvider).getItemAt(1).testFunction(); etc --- In [EMAIL PROTECTED] mailto:flexcoders%40yahoogroups.com , erinwyher erinwyher@ wrote: In Flex 1.5, you use getItemAt() to call functions from the children of the TileList, but that method no longer exists in F2. Any suggestions to do this? Here is some sample code: test.mxml: ?xml version=1.0 encoding=utf-8? mx:Application xmlns:mx=http://www.adobe.com/2006/mxml http://www.adobe.com/2006/mxml xmlns:view=view.* layout=absolute creationComplete=doInit() mx:Script ![CDATA[ public var arrTest:Array; public function doInit():void { arrTest = [1,2,3,4]; myTiles.dataProvider = arrTest; } public function clickedList():void { //myTiles.getItemAt(1).testFunction (); //I want to call a function here for a specific set of tiles... how do I do that without getItemAt? //Note: getChildAt does not work either } ]] /mx:Script mx:Button label=click me click=clickedList()/ mx:TileList id=myTiles width=660 itemRenderer=view.TestComponent/ /mx:Application TestComponent.mxml ?xml version=1.0 encoding=utf-8? mx:Canvas xmlns:mx=http://www.adobe.com/2006/mxml http://www.adobe.com/2006/mxml width=40 height=30 backgroundColor=#FF3366 mx:Script ![CDATA[ import mx.controls.Alert; public function testFunction():void { Alert.show('hi'); } ]] /mx:Script /mx:Canvas
[flexcoders] Re: Tilelist in Flex 2 - what to use instead of getItemAt()?
Thanks for the suggestion, but it doesn't work :(. Do you need the latest version of Flex 2 for that to work? I didn't install the latest upgrade (2.1 I believe). When I tried it, I got the following error. TypeError: Error #1006: value is not a function. at test/clickedList() at test/___Button1_click() Also, in the debugger, IList(myTiles.dataProvider) cannot be evaluated, and neither can IList(myTiles.dataProvider).getItemAt(any_number) Any more ideas? I really need help with this and I appreciate any suggestions! Thank you. -Erin --- In flexcoders@yahoogroups.com, bhaq1972 [EMAIL PROTECTED] wrote: the getItemAt() function is available but not like the flex 1.5 way. you can do the following import mx.collections.IList; public function clickedList():void { //myTiles.getItemAt(1).testFunction(); IList(myTiles.dataProvider).getItemAt(1).testFunction(); etc --- In flexcoders@yahoogroups.com, erinwyher erinwyher@ wrote: In Flex 1.5, you use getItemAt() to call functions from the children of the TileList, but that method no longer exists in F2. Any suggestions to do this? Here is some sample code: test.mxml: ?xml version=1.0 encoding=utf-8? mx:Application xmlns:mx=http://www.adobe.com/2006/mxml; xmlns:view=view.* layout=absolute creationComplete=doInit() mx:Script ![CDATA[ public var arrTest:Array; public function doInit():void { arrTest = [1,2,3,4]; myTiles.dataProvider = arrTest; } public function clickedList():void { //myTiles.getItemAt(1).testFunction (); //I want to call a function here for a specific set of tiles... how do I do that without getItemAt? //Note: getChildAt does not work either } ]] /mx:Script mx:Button label=click me click=clickedList()/ mx:TileList id=myTiles width=660 itemRenderer=view.TestComponent/ /mx:Application TestComponent.mxml ?xml version=1.0 encoding=utf-8? mx:Canvas xmlns:mx=http://www.adobe.com/2006/mxml; width=40 height=30 backgroundColor=#FF3366 mx:Script ![CDATA[ import mx.controls.Alert; public function testFunction():void { Alert.show('hi'); } ]] /mx:Script /mx:Canvas
[flexcoders] Re: Tilelist in Flex 2 - what to use instead of getItemAt()?
Try using an ArrayCollection for your data provider instead of a simple array. --- In flexcoders@yahoogroups.com, erinwyher [EMAIL PROTECTED] wrote: Thanks for the suggestion, but it doesn't work :(. Do you need the latest version of Flex 2 for that to work? I didn't install the latest upgrade (2.1 I believe). When I tried it, I got the following error. TypeError: Error #1006: value is not a function. at test/clickedList() at test/___Button1_click() Also, in the debugger, IList(myTiles.dataProvider) cannot be evaluated, and neither can IList(myTiles.dataProvider).getItemAt(any_number) Any more ideas? I really need help with this and I appreciate any suggestions! Thank you. -Erin --- In flexcoders@yahoogroups.com, bhaq1972 mbhaque@ wrote: the getItemAt() function is available but not like the flex 1.5 way. you can do the following import mx.collections.IList; public function clickedList():void { //myTiles.getItemAt(1).testFunction(); IList(myTiles.dataProvider).getItemAt(1).testFunction(); etc --- In flexcoders@yahoogroups.com, erinwyher erinwyher@ wrote: In Flex 1.5, you use getItemAt() to call functions from the children of the TileList, but that method no longer exists in F2. Any suggestions to do this? Here is some sample code: test.mxml: ?xml version=1.0 encoding=utf-8? mx:Application xmlns:mx=http://www.adobe.com/2006/mxml; xmlns:view=view.* layout=absolute creationComplete=doInit() mx:Script ![CDATA[ public var arrTest:Array; public function doInit():void { arrTest = [1,2,3,4]; myTiles.dataProvider = arrTest; } public function clickedList():void { //myTiles.getItemAt(1).testFunction (); //I want to call a function here for a specific set of tiles... how do I do that without getItemAt? //Note: getChildAt does not work either } ]] /mx:Script mx:Button label=click me click=clickedList()/ mx:TileList id=myTiles width=660 itemRenderer=view.TestComponent/ /mx:Application TestComponent.mxml ?xml version=1.0 encoding=utf-8? mx:Canvas xmlns:mx=http://www.adobe.com/2006/mxml; width=40 height=30 backgroundColor=#FF3366 mx:Script ![CDATA[ import mx.controls.Alert; public function testFunction():void { Alert.show('hi'); } ]] /mx:Script /mx:Canvas
[flexcoders] Re: Tilelist in Flex 2 - what to use instead of getItemAt()?
the getItemAt() function is available but not like the flex 1.5 way. you can do the following import mx.collections.IList; public function clickedList():void { //myTiles.getItemAt(1).testFunction(); IList(myTiles.dataProvider).getItemAt(1).testFunction(); etc --- In flexcoders@yahoogroups.com, erinwyher [EMAIL PROTECTED] wrote: In Flex 1.5, you use getItemAt() to call functions from the children of the TileList, but that method no longer exists in F2. Any suggestions to do this? Here is some sample code: test.mxml: ?xml version=1.0 encoding=utf-8? mx:Application xmlns:mx=http://www.adobe.com/2006/mxml; xmlns:view=view.* layout=absolute creationComplete=doInit() mx:Script ![CDATA[ public var arrTest:Array; public function doInit():void { arrTest = [1,2,3,4]; myTiles.dataProvider = arrTest; } public function clickedList():void { //myTiles.getItemAt(1).testFunction (); //I want to call a function here for a specific set of tiles... how do I do that without getItemAt? //Note: getChildAt does not work either } ]] /mx:Script mx:Button label=click me click=clickedList()/ mx:TileList id=myTiles width=660 itemRenderer=view.TestComponent/ /mx:Application TestComponent.mxml ?xml version=1.0 encoding=utf-8? mx:Canvas xmlns:mx=http://www.adobe.com/2006/mxml; width=40 height=30 backgroundColor=#FF3366 mx:Script ![CDATA[ import mx.controls.Alert; public function testFunction():void { Alert.show('hi'); } ]] /mx:Script /mx:Canvas