【问题标题】:resize all objects inside view in titanium调整钛视图内所有对象的大小
【发布时间】:2017-04-06 12:07:42
【问题描述】:

我有一个包含我的布局的视图。当按下按钮时,主视图会调整大小,但所有子视图都保持相同的高度和宽度。如何调整主视图内的所有对象的大小?

例如当我有这个时:

var view = Ti.UI.createView({
  height:deviceHeight,
  width:deviceWidth
});

view.add(Ti.UI.createView({
  height:Ti.UI.SIZE,
  width:Ti.UI.SIZE
}));

如何调整添加到第一个视图的第二个视图的大小?

我正在以经典模式在钛中开发我的应用程序。

【问题讨论】:

    标签: android ios titanium titanium-mobile autoresize


    【解决方案1】:

    因为您将SIZE 指定为视图的大小,它将保持该大小。由于您没有指定它需要具有基于父级的大小。

    这样做的唯一方法是,如果您将高度和宽度指定为百分比。

    如果你的内容实际上是动态的,你可以欺骗它。

    按下按钮时,将您的view 转换为带有var image = view.toImage() 的图像。

    然后,隐藏您添加的所有内容并将图像插入到您的视图中:

    var image = view.toImage()
    
    var img = Ti.UI.createImageView({
        height: '100%',
        width: '100%',
        image: image
    });
    view.add(img);
    

    然后您可以调整view 的大小,内容也会调整大小。

    【讨论】:

    • 感谢它的工作。我发现你的代码有问题。或者你从 Ti.UI.createView 更改为 Ti.UI.createImageView 矿石而不是 image : image 你必须设置 backgroundImage : image
    • 还有一个问题。在android中,你的代码需要很长时间才能执行。有更快的方法吗?
    • 哪一个,图像破解还是百分比解决方案
    • 我认为这是图像破解。当我使用 view.toImage() 时。
    • 是的 toImage 不是最快的。您还可以在单​​击按钮之前在后台预先生成此图像。但这只有在内容不能改变时才有意义
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-20
    • 2022-01-23
    • 1970-01-01
    • 2021-09-10
    • 1970-01-01
    • 2012-01-17
    相关资源
    最近更新 更多