Hi Maurice, You are a life saver : ) Thank you so much for that tip. I had been struggling on that issue for quite some time. I have set mouseSensitivity to about 50 now, which pretty much covers a fat finger's touch on it and display's data tip smoothly and there is no need of custom renderer too.
Thanks again... Cheers! On Tue, Sep 9, 2014 at 6:14 PM, Maurice Amsellem < [email protected]> wrote: > Hi Deepak, > > I didn't test, but since Datatips are managed at the chart level, not at > the renderers level, (check ChartBase.mouseOverHandler() ), then it likely > that simply adding click/tap listeners to the renderer will not work. > > Did you try setting mouseSensitivity property for the chart ? > > > http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/mx/charts/chartClasses/ChartBase.html#mouseSensitivity > > > Maurice > > -----Message d'origine----- > De : Deepak MS [mailto:[email protected]] > Envoyé : mercredi 27 août 2014 11:46 > À : [email protected] > Objet : Lineseries tooltip on mobile > > Hi there, > I'm using a columnchart with a lineseries in it for an ipad app. I have > enabled tooltip for it. But unfortunately its too difficult to get the > tooltip on the device when we move the finger over it. > > Hence I planned to add a custom circleitemrenderer with width and height of > 20 to get the custom tooltip by adding a click\touchtap event on it. > > But unfortunately, it is not triggering the click\touchtap event at all. > > My code: > > myLineSeries.setStyle('itemRenderer', new ClassFactory(DataPointRenderer)); > > > public class DataPointRenderer extends CircleItemRenderer > { > public function DataPointRenderer() > { > super(); > width = 20; > height = 20; > addEventListener(MouseEvent.CLICK, onClick); > addEventListener(TouchEvent.TOUCH_TAP, onClick); > > addEventListener(MouseEvent.MOUSE_OVER, onOver); > } > > private var model:ApplicationModelLocator = > ApplicationModelLocator.getInstance(); > private function onOver(event:MouseEvent):void > { > model.showAlert('over'); /// This function is not at all > called even after clicking(both on simulator as well as on device) > } > > private function onClick(event:MouseEvent):void > { > model.showAlert('clicked'); /// This function is not at all > called even after mouse hover (on desktop simulator) > } > > override protected function > updateDisplayList(unscaledWidth:Number,unscaledHeight:Number):void > { > super.updateDisplayList(unscaledWidth, unscaledHeight); > var currentFill:uint; > var g:Graphics = graphics; > g.clear(); > if (data is ChartItem && data.hasOwnProperty('fill')) > { > currentFill = data.fill.color; > g.beginFill(currentFill); > g.drawCircle(5,5,20); > g.endFill(); > } > > } > } > > > Am I missing something here? >
