Ravi,We don't have a method directly on the feature layer to apply a spatial filter - I don't see one in Flex either. However if you want to apply a spatial query directly to the feature layer one approach would be to add a feature layer in selection mode then use selectFeatures to perform a spatial query. Here's a sample that shows how this works, here only features within the specified extent are drawn on the map. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>FeatureLayer On Demand</title>
<script type="text/javascript">djConfig = { parseOnLoad:true };</script>
<script type="text/javascript" src="http://serverapi.arcgisonline.com/jsapi/arcgis/?v=2.0"></script>
<link rel="stylesheet" type="text/css" href="http://serverapi.arcgisonline.com/jsapi/arcgis/2.0/js/dojo/dijit/themes/tundra/tundra.css">
<script type="text/javascript">
dojo.require("esri.map");
dojo.require("esri.layers.FeatureLayer");
dojo.require("dijit.form.Button");
dojo.require("dijit.Dialog");
var mapLayers = []; //array of layers in client map
var map;
function init() {
var extent = new esri.geometry.Extent({"xmin":-13337231.937022427,"ymin":3914529.1302062804,"xmax":-12909184.578625461,"ymax":4220277.2433469705,"spatialReference":{"wkid":102100}});
map = new esri.Map("map", { extent:extent});
dojo.connect(map, "onLoad", initOperationalLayer);
var imagery = new esri.layers.ArcGISTiledMapServiceLayer("http://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer");
map.addLayer(imagery);
}
function initOperationalLayer(map) {
var featureLayer = new esri.layers.FeatureLayer("http://sampleserver3.arcgisonline.com/ArcGIS/rest/services/Earthquakes/Since_1970/MapServer/0",{
mode: esri.layers.FeatureLayer.MODE_SELECTION,
outFields: ["*"]
});
map.addLayer(featureLayer);
var extent = new esri.geometry.Extent({"xmin":-13228997.10497058,"ymin":3961002.843403707,"xmax":-13014973.425772188,"ymax":4113876.899973986,"spatialReference":{"wkid":102100}});
var query = new esri.tasks.Query();
query.geometry = extent;
featureLayer.selectFeatures(query,esri.layers.FeatureLayer.SELECTION_NEW);
}
dojo.addOnLoad(init);
</script>
</head>
<body class="tundra">
<div style="position:relative;">
<div id="map" style="width:700px; height:500px; border:1px solid #000;"></div>
</div>
</body>
</html>