flexiewer里遇到的一些问题

infoWindowRenderer问题 在arcgis api for flex中要设置infowindow的外观很容易,只需要在编写一下css文件即可,就如

esri|InfoWindow

{

border-thickness: 0;

background-color: green;

font-size: 16;   upper-left-radius: 15;

upper-right-radius: 0;   info-placement: top;

}

无论是直接使用Map的infowindow,还是通过infoWindowRenderer渲染器来设置Graphic的infowindow,或是使用FeatureLayer 的infoWindowRenderer来展现infowindow,通过上面的方法都是可以正常实现的。

但是如果你是使用flexviewer框架来设置infowindow外观,还是通过上面的方法,结果你会发现只能改改字体大小,字体颜色什么的, 并不能改变infowindow的外观(诸如背景),原因就在于flexviewer在框架里已经为你写了,并且infowindow的外观设置的跟你的应用 程序的外观是一样的,可以从代码里看出来,具体代码在  UIManager.as 里,可以找到

var cssStyleDeclarationInfoContainer:CSSStyleDeclaration = topLevelStyleManager.getStyleDeclaration("com.esri.ags.components.supportClasses.InfoWindow");

if (numberOfStyleColors > 4)

{

cssStyleDeclarationInfoContainer.setStyle("backgroundColor", backgroundColor);

cssStyleDeclarationInfoContainer.setStyle("borderColor", textColor);

}

backgroundColor可以再自己重新定义一个, 找到下面这个

if (numberOfStyleColors > 4)

{

textColor = configData.styleColors[0];

backgroundColor = configData.styleColors[1];

rolloverColor = configData.styleColors[2];

selectionColor = configData.styleColors[3];

titleColor = configData.styleColors[4];

applicationBackgroundColor = (configData.styleColors[5] != null) ? configData.styleColors[5] : 0xFFFFFF;

你定义的颜色值名称 = 配置文件的第几个颜色值;

}

然后再再配置文件(config.xml)里添加颜色值(即在style节点下面的color的节点里添加几个颜色值) 如果仔细看这个as文件的话,大概就会明白

同时当你把这个背景色改成你想要的颜色后,又出现个问题,infowindow的标题栏还是以前的颜色,这就需要你改另一处配置啦, 也是在这个as文件里

var cssStyleDeclarationContentNavigator:CSSStyleDeclaration = topLevelStyleManager.getStyleDeclaration("com.esri.ags.components.ContentNavigator"); if (numberOfStyleColors > 4)

{

cssStyleDeclarationContentNavigator.setStyle("headerBackgroundColor", backgroundColor);

cssStyleDeclarationContentNavigator.setStyle("headerColor", textColor);

} 设置这个跟上面的一样

通过官方给出的API关于com.esri.ags.components.ContentNavigator

The ContentNavigator is a generic container for UIComponents. It can be used as the content of the InfoWindow or used outside of the Map. You set its dataProvider with a list of components and they are displayed one at a time. If a component is a Graphic,  it looks for an infoWindowRenderer IFactory on the graphic or the graphic's graphicsLayer. If no infoWindowRenderer is found, it shows a default key-value data grid.

也就是说同时需要修改他的外观才能像在第一种方式设置的外观一样,甚至做的外观更美观

flexviewer infowindow背景问题的更多相关文章

  1. (一)FlexViewer之整体框架解析

    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/. 1.FlexViewer简介 FlexViewer框架为Esri提供的 ...

  2. Android 百度地图 SDK v3.0.0 (三) 添加覆盖物Marker与InfoWindow的使用

    转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/37737213 上篇博客已经实现了地图的定位以及结合了方向传感器用户路痴定位方向, ...

  3. Android 百度地图 SDK v3.0.0 (三) 加入覆盖Marker与InfoWindow使用

    转载请注明出处:http://blog.csdn.net/lmj623565791/article/details/37737213 上篇博客已经实现了地图的定位以及结合了方向传感器用户路痴定位方向, ...

  4. 设置windows10 背景颜色

    [Win + R ] regedit 打开注册表 HKEY_CURRENT_USER\Control Panel\Colors 1.[InfoWindow] 默认为(白色):255 255 255, ...

  5. CSS3 background-image背景图片相关介绍

    这里将会介绍如何通过background-image设置背景图片,以及背景图片的平铺.拉伸.偏移.设置大小等操作. 1. 背景图片样式分类 CSS中设置元素背景图片及其背景图片样式的属性主要以下几个: ...

  6. 冒泡,setinterval,背景图的div绑定事件,匿名函数问题

    1.会冒泡到兄弟元素么? $(function(){ $("#a").click(function(){alert("a")}) $("#b" ...

  7. app引导页(背景图片切换加各个页面动画效果)

    前言:不知不觉中又加班到了10点半,整个启动页面做了一天多的时间,一共有三个页面,每个页面都有动画效果,动画效果调试起来麻烦,既要跟ios统一,又要匹配各种不同的手机,然后产品经理还有可能在中途改需求 ...

  8. CSS 3学习——box-sizing和背景

    box-sizing 在CSS 2中设置元素的width和height仅仅是设置了元素内容区的宽和高,元素实际的尺寸是margin + border + padding + 内容区. CSS 3(截止 ...

  9. .NET同步与异步之相关背景知识(六)

    在之前的五篇随笔中,已经介绍了.NET 类库中实现并行的常见方式及其基本用法,当然.这些基本用法远远不能覆盖所有,也只能作为一个引子出现在这里.以下是前五篇随笔的目录: .NET 同步与异步之封装成T ...

随机推荐

  1. [Shell]如何获取Maven工程的project.version信息

    问题: 今天遇到Shell中如何能获取Maven项目工程中的project.version信息的问题 解决方案: 使用Maven的Exec 插件 #! /bin/bash MVN_VERSION=$( ...

  2. document.referrer和history.go(-1)退回上一页区别

    javascript:location=document.referrer;和javascript:history.go(-1);区别: 返回上一页,在PC端我们可以使用:history.go(-1) ...

  3. 02-线性结构3 Reversing Linked List (25 分)

    Given a constant K and a singly linked list L, you are supposed to reverse the links of every K elem ...

  4. linux系统管理(1)之 内核编译选项查看

    三个方法 proc文件系统 ubunut debain 红帽等 proc文件系统 /proc/config.gz This file shows you the compile-time config ...

  5. 数组和arguments

    Arguments(Array-Like Objects) arguments对象是所有(非箭头)函数中都可用的局部变量 拥有四个属性(按照规范来说只有三个了----caller) arguments ...

  6. linux下普通用户添加 sudo 免密码

    在使用普通用户登录的时候,会经常使用sudo指令执行一些操作,有时候感觉输入密码比较繁琐,特别是需要设置一些开机启动的时候操作,而这些操作往往就需要sudo指令,如果没有免密的话,在使用普通用户登录的 ...

  7. oracle12c之一 控制-PDB的磁盘I/O(IOPS,MBPS)资源管理

    在以前的版本中,没有简单的方法来控制单个PDB使用的磁盘I / O量. 因此,某个PDB可能耗尽大量磁盘I / O,并影响同一实例中的其他PDB的性能. Oracle 12c R2可以控制PDB使用的 ...

  8. 使用maven构建多模块项目_记录

    参照孤傲苍狼的博客:https://www.cnblogs.com/xdp-gacl/p/4242221.html 备注:博客中的生成语句,适用于maven3.0.5以上,若为3.0.5以下,则将cr ...

  9. 浅谈Cordova优缺点与环境部署(转载)

    浅谈Cordova优缺点与环境部署 作者:苏华杰 简介 Cordova是一个用基于HTML.CSS和JavaScript的,用于创建跨平台移动应用程序的快速开发平台.它使开发者能够利用iPhone.A ...

  10. unittest之断言

    在测试用例中,执行完测试用例后,最后一步是判断测试结果是 pass 还是fail,自动化测试脚本里面一般把这种生成测试结果的方法称为断言(assert).用 unittest 组件测试用例的时候,断言 ...