在 Android 中设置封面流程

发布于 2024-11-01 07:31:44 字数 275 浏览 4 评论 0原文

我创建了一个 iphone 应用程序,现在我被委托在 android 中执行相同的应用程序。我使用了 github 上 thefaj 的 OpenFlow https://github.com/thefaj/OpenFlow

但是我还没有能够在 android 上找到可以工作的 coverflow 的东西。

有没有人在 android 中有这方面的经验或者知道一个好的起点?

I created an iphone application, and now I am consigned to do the same application in android. I used the OpenFlow from thefaj on github https://github.com/thefaj/OpenFlow

however I have yet to be able to find something with a working coverflow on the android..

Does anyone have experience with this in android or know a good place to start ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

软甜啾 2024-11-08 07:31:44

我在我的项目中使用了这段代码
http://www.inter-fuser.com/2010 /02/android-coverflow-widget-v2.html

您可以调整它以从某些数据源加载内容,这不是一项艰苦的工作。

I used this code on my project
http://www.inter-fuser.com/2010/02/android-coverflow-widget-v2.html

You can adapt it to load the contents from some datasource, it's not a hard work.

沫尐诺 2024-11-08 07:31:44

刚刚发现http://code.google.com/p/android-coverflow/ 这似乎是基于内部融合器代码并进行了一些优化

Just came across http://code.google.com/p/android-coverflow/ which seems to be based in the inter-fuser code with some optimisations

冷血 2024-11-08 07:31:44

扩展 Gallery,并重写此方法,如下所示:

   protected boolean getChildStaticTransformation(View child, Transformation t) {
    t.clear();
    t.setTransformationType(Transformation.TYPE_MATRIX);
    final Matrix matrix = t.getMatrix();
    float childCenterPos = child.getLeft() + (child.getWidth() / 2f);
    float center = getWidth() / 2;
    float diff = Math.abs(center - childCenterPos);
    float scale = diff / getWidth();

    matrix.setScale(1 - (scale), 1 - (scale));

    return true;
}

显然,您可以使用矩阵做更多有趣的事情,而不仅仅是缩放,但这只是一个示例,说明它是多么容易完成。

Extend Gallery, and override this method as so:

   protected boolean getChildStaticTransformation(View child, Transformation t) {
    t.clear();
    t.setTransformationType(Transformation.TYPE_MATRIX);
    final Matrix matrix = t.getMatrix();
    float childCenterPos = child.getLeft() + (child.getWidth() / 2f);
    float center = getWidth() / 2;
    float diff = Math.abs(center - childCenterPos);
    float scale = diff / getWidth();

    matrix.setScale(1 - (scale), 1 - (scale));

    return true;
}

Obviously you can do more interresting stuff with the matrix than just scaling, but this just as an example of how easy it can be done.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文