问题标签 [appcelerator-alloy]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - Titanium - Android 上的 ScrollableView 高度
我对 Android 上的可滚动视图的高度有疑问。
我不知道照片的宽度和高度是多少,但我希望照片的宽度填满屏幕,宽度:Ti.UI.FILL,高度成比例。但结果是 scrollableView 填充了宽度,但照片在可滚动视图的中心非常小。我需要保持图像的比例。
在 iOS 上完美运行,但在 Android 上却是不可能的,
我有一个 tableViewRow,里面有一个 scrollableView:
滑块的 tss 为:
我添加到可滚动视图的图像代码:
ios - 使用 Appcelerator 在 iOS 上渲染 ScrollView 需要大量时间
我们的 Appcelerator 应用程序之一在 IOS 平台上遇到了在滚动视图中显示多个小部件(自定义文本字段以满足客户端 UI 要求)的屏幕的渲染延迟。
屏幕使用ScrollView,这些自定义控件(小部件)显示在视图中。我们在以下情况下看到了延迟:
- 当屏幕显示相当多的控件时(大约 10-15 个控件)。
可以观察到,在页面加载时渲染时间以及对该控件属性的任何更改(例如通过调用小部件上的方法来设置某些属性)会导致额外的 2-3 秒延迟。
- 当这些控件被动态添加到页面中时——比如响应用户的问题,我们会显示额外的控件来捕获信息。
在这种情况下,我们已经看到了明显的滞后,从用户体验的角度来看,这并不好。
笔记:
- 所有这些问题仅在 IOS 平台上,而相同的代码在 Android 平台上运行良好(没有任何滞后)。
- 尝试使用 tableview 代替 scrollview,但结果没有什么不同。
- 使用 tableview 也会导致滚动性能不佳。
- 由于一些复杂的视图是动态创建和添加的,因此使用 listView 将具有挑战性。
任何人都可以让我知道你们是否知道这样的问题以及它是如何解决的(在任何 appcelerator 项目中)?在本机前端有什么方法可以通过模块设置一些属性/本机代码,这将有助于加快 IOS 上的渲染速度?
我们仅使用 Titanium SDK 版本 5.1.2 为使用 iOS 7.1.1+ 的 iPad 和 iPad Mini 进行开发(我们已经尝试了最新的 SDK,但它们并没有解决我们的问题)。
android - Titanium Android 模块:裁剪、旋转、调整大小...图像
你知道一个 Titanium Android 模块,它允许像这样编辑、旋转、调整大小......图像吗?
listview - 将控制器添加到 ListView 模板
我有一个 ListView,但我需要向每个 ListItem 添加单元格,我不知道我需要添加多少单元格,这可能吗?
我无法将视图添加到模板内的 ListItem,我的 id 和 bindId 等于 ListItem 元素上的“行”。
我能想到的唯一其他解决方案是拥有 12 个单元格,并隐藏我不需要的单元格。
我有一个带有 bindId 的数组要添加到每个单元格:
我有 12 个单元格,宽度设置为 0,我只设置我正在使用的列的宽度,其他的保持隐藏。这是我的实际文件:
这是我的控制器的一部分:
appcelerator - 使用合金模型创建 SQLite 事务
我尝试使用以下代码创建交易:
但我有一个例外:
appcelerator - 钛CLI合金执行位置
我最近写了一个小技巧,可以使用 TypeScript ( https://github.com/developer82/Ti.TypeScript )编写 Titanium 应用程序。这涉及编辑 SDK 合金编译器脚本。
从我写的内容可以看出,脚本位于/Users/YOUR_USERNAME/.appcelerator/install/SDK_VERSION/package/node_modules/alloy/Alloy/commands/compile/index.js
当我从 Titanium Studio 运行我的项目时,它运行良好。但是,当我尝试从命令行运行时,ti build -p ios
我遇到了一个错误This project requires the TypeScript hack in Titnaium SDK
- 这是我写的验证,黑客已应用于编译器。
原因是从命令行运行,CLI 正在寻找合金/usr/local/bin/alloy
- 我从以下输出中了解到:
为什么位置不同?为什么 CLI 不像 Appcelerator Studio 那样工作?我怎样才能让它像 Appc Studio 一样工作?
android - Liveview 在 Appcelerator Studio 中的合金项目中不起作用(与经典项目一起工作正常)
我正在尝试使用 Liveview 支持运行我的合金项目。但它不起作用并给我以下错误。
另一方面,如果我创建一个新的 Classic 项目,它在 LiveView 上运行良好。
以前,我在笔记本电脑(Window OS)上安装了 Genymotion,由于模拟器和笔记本电脑上的 IP 地址不同,Liveview 根本无法工作。这是有道理的(我猜)。我已经卸载了 Genymotion,现在我遇到了另一个问题。我的网络地址也是192.168.100.1。我也使用 Java 32 和 64 位对其进行了检查,但同样的问题仍然存在。
我已经花了将近 2 周的时间,但无法弄清楚。我对 Appcelerator 和 node js 比较陌生,请有人指导我。
编辑:
这是可能有用的相对细节。
appcelerator - Titanium appcelerator android 和 ios 平台高度(以像素和 dp 为单位)
我即将使用 appcelerator Titan 框架测试一个应用程序,我必须在屏幕上居中显示一个视图:
我的 index.xml :
第一屏 xml:
index.js: 实现的公式是:viewTopPosition = (platformheight - viewheight)/2
在 iOs 上它看起来很棒,视图垂直居中,但在 android 中:Ti.Platform.displayCaps.platformHeight 是一个太大的像素值 = 1920
在我已经指定的 tiapp.xml 文件中:
我知道 android 是像素单位,但 iOs 使用 dp 单位,那么我该如何实现呢?有人有想法吗?现在对于 android 我替换了
至
但我问自己这是否对所有安卓屏幕分辨率都有好处?如果这是最佳做法?
感谢您的帮助。
appcelerator - Titanium facebook登录/注销按钮不显示对话框
我想将 facebook 登录按钮添加到我的 appcelerator Titan 移动应用程序中。遵循此文档后:Titanium facebook 模块
我能够显示 facebook 登录按钮:
对于视图:
但是当我点击 facebook 登录按钮时,它会打开第二个窗口,显示以下消息:未登录:您尚未登录。请登录并重试。
没有登录对话框仅显示此消息,用户也无法登录。
我只想打开登录对话框,并在成功时返回带有用户信息的应用程序。
注意:我还收到来自 facebook 的通知,因为应用程序配置不允许给定 url。
谢谢你的帮助。