Я новичок во Flex и использую Flash Builder 4.5.
Я так расстроен .. Пытаюсь решить эту проблему со вчерашнего утра и кажется, что ресурсов просто недостаточно, чтобы узнать больше о Flex!
так вот в чем проблема: у меня есть поле базы данных с типом данных date, и я просто не могу заказать по нему xField! я пробовал так много вещей, и ничего не работает .. когда я пытаюсь заказать его по id, он работает, но не поддерживает даты или что-то в этом роде.
вот формат php для даты:
$row->date = new DateTime($row->date);
$row->date = $row->date->format( "d/m/Y" );
Теперь, когда я пытаюсь сделать xField = "date", столбцы не отображаются, а xField по-прежнему [0 20 40 60 и т. Д.].
Я открыт для новых предложений, меня не волнует, как я просто хочу показывать даты на xField.
И, пожалуйста, как я уже сказал, я немного новичок, поэтому, пожалуйста, сделайте ваши ответы понятными.
Надеюсь, кто-нибудь сможет мне помочь с этим, спасибо, ребята!
РЕДАКТИРОВАТЬ: вот весь код FLEX:
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
xmlns:fanpagesservice="services.fanpagesservice.*"
width="914" height="636" minWidth="955" minHeight="600" backgroundColor="#000000"
creationComplete="application1_creationCompleteHandler(event)">
<fx:Script>
<![CDATA[
import mx.charts.events.ChartItemEvent;
import mx.collections.ArrayCollection;
import mx.events.FlexEvent;
import mx.rpc.events.ResultEvent;
[Bindable]
private var Totals:ArrayCollection = new ArrayCollection;
[Bindable]
private var Likes:ArrayCollection = new ArrayCollection;
[Bindable]
public var minDate:Date = new Date(2011, 06, 1);
[Bindable]
public var maxDate:Date = new Date(2011, 06, 30);
protected function ResponcerTotals_resultHandler(event:ResultEvent):void
{
// TODO Auto-generated method stub
Totals = event.result as ArrayCollection;
}
protected function application1_creationCompleteHandler(event:FlexEvent):void
{
// TODO Auto-generated method stub
ResponderTotals.token = fanpageService.getAllFanpagesTotals();
}
protected function ResponderLikes_resultHandler(event:ResultEvent):void
{
// TODO Auto-generated method stub
Likes = event.result as ArrayCollection;
}
protected function totalsPie_itemClickHandler(event:ChartItemEvent):void
{
// TODO Auto-generated method stub
ResponderLikes.token = fanpageService.getAllFanpagesStats(event.hitData.item.page_name);
}
]]>
</fx:Script>
<fx:Declarations>
<!-- Place non-visual elements (e.g., services, value objects) here -->
<fanpagesservice:FanpagesService id="fanpageService" />
<s:CallResponder id="ResponderTotals" result="ResponcerTotals_resultHandler(event)" />
<s:CallResponder id="ResponderLikes" result="ResponderLikes_resultHandler(event)" />
<mx:SeriesInterpolate id="interpolate" duration="500"/>
</fx:Declarations>
<s:Panel x="18" y="9" width="878" height="613" backgroundColor="#262626" chromeColor="#000"
color="#FFFFFF" contentBackgroundColor="#262626" fontFamily="Arial" fontSize="14"
skinClass="spark.skins.spark.PanelSkin" textAlign="center">
<s:layout>
<s:BasicLayout/>
</s:layout>
<mx:PieChart id="totalsPie" x="10" y="10" itemClick="totalsPie_itemClickHandler(event)" dataProvider="{Totals}" showDataTips="true">
<mx:series>
<mx:PieSeries displayName="Series 1" field="likes" nameField="page_name" showDataEffect="{interpolate}"/>
</mx:series>
</mx:PieChart>
<mx:Legend x="11" y="414" width="400" dataProvider="{totalsPie}"/>
<mx:ColumnChart id="columnchart1" x="432" y="10" width="434" dataProvider="{Likes}"
showDataTips="true">
<mx:series>
<mx:ColumnSeries displayName="serie" yField="likes" xField="date" showDataEffect="{interpolate}"/>
</mx:series>
</mx:ColumnChart>
</s:Panel>
</s:Application>
По сути, существует круговая диаграмма, когда вы нажимаете на ее часть, она должна показывать «лайки» в столбце диаграммы по датам (сколько лайков она получила каждый день). Часть щелчка работает, только xField = "date" не работает.