- 浏览: 15135 次
- 性别:
- 来自: 北京
最新评论
文章列表
MainActivity --启动--> ActivityA(singleInstance)
Task 2 Back Stack in the foreground:
ActivityA
Task 1 Back Stack:
MainActivity
MainActivity --启动--> ActivityA(singleInstance)--启动--> ActivityB
Task 1 Back Stack in the foreground:
ActivityB
MainAc ...
其实不算是性能优化了,顶多算矛盾转移:我在开发中发现,Titanium的DatePicker和TimePicker,初始化比较费时间。如果刚好在创建windows时初始化这两个Picker,window打开的速度会被严重拖累,造成难以忍受的性能问题。
比如下面的代码,相信各位看官不会陌生:
function RankWindow() {
var mainWnd = Ti.UI.createWindow(...);
...
var datePicker = Titanium.UI.createPicker(...);
mainWnd.add(datePicker);
...
WebView很好很强大,但是在Android中加载慢啊。
在同一个Activity中,用ViewPager可以加载多个Fragment,切换视图比较流畅,但是如果超出了3个Fragment,而且刚好Fragment中有WebView,体验就非常糟糕,页面要好几秒才能显示出来。
这是因为ViewPager缺省情况下,只把当前页的前一页和后一页放在缓冲区中。如果超出了3个Fragment,那么切换到第4个时,第一个会被销毁,第4个需要重建。内嵌的WebView就要重新被加载。
如果Frragment不是很多的话,那可以设置ViewPager.setOffscreenPageLimit,增加缓 ...
Titanium 2.x/3.x没有图表(chart)功能,用WebView控件来集成第三方JS图标库是一个解决方案。
使用WebView + local html时,WebView加载html中用<script/>引入的JavaScript文件,不能和普通Web一样引用。
在IOS平台上可以用"app://"前缀来指定js文件的绝对路径,来解决。例如,
<script src="app://Resources/lib/raphael.tjs"></script>
在Android平台上有类似的解决办法 ...
如何修改Raphael的Line Chart的X轴下标?
var r = Raphael("chartDiv");
var lines = r.linechart(...);
var xValues = lines.axis[0].text.items;
for(x in xValues) {
xValues[x].attr({'text': 'newValue', 'fill': '#666666', 'font': '8px Verdana, sans-serif'});
};
Raphael l ...
问题:
ScrollableView + WebView的时候,拖动WebView,会出现很讨厌的水平和垂直滚动条,而且导致ScrollableView不能切换。
解决办法:
html的meta部分增加
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
javascript部分增加
document.ontouchmove = function(event){ event.preventDefault(); }
W ...
Titanium的国际化支持还可以,但是官方文档对于如何支持中文并没有写得很清楚:
https://wiki.appcelerator.org/display/guides/Internationalization
我在i18n目录下把中文文件夹名字设置为zh,不行。有网友把文件夹名字设置为zh_CN可以工作,http://www.tidevcn.com/forum.php?mod=viewthread&tid=590,但是我这样做了以后还是不行。
费了一点周折,通过Titanium.Locale.currentLanguag读到语言名称竟然是:zh_Hans!
把zh或者zh_C ...