【问题标题】:Android L - Material design on SwipeRefreshLayout color schemeAndroid L - SwipeRefreshLayout 配色方案上的材料设计
【发布时间】:2014-07-28 12:41:20
【问题描述】:

我开始在我的最新项目中实现 Material Theme,为新 L 版本的发布做准备。

我一直在阅读材料设计指南并找到了这个。

UI 颜色应用程序

选择你的调色板

通过选择三种色调来限制您的颜色选择 辅助调色板中的主要颜色和一种强调色。口音 颜色可能需要也可能不需要后备选项

它或多或少地解释了如何在应用程序上实现这些色调,包括强调色,但是当在我的应用程序上使用 SwipeRefreshLayout 进度条的主颜色时,感觉不对。

它应该是强调色和android:colorPrimary 之间的混合吗?

对此有什么想法吗?是否有任何关于在我错过的材料设计指南中实现进度条的解释?

提前致谢

【问题讨论】:

标签: colors android-5.0-lollipop material-design


【解决方案1】:

材料设计规范已更新为 swipe to refresh pattern 的新指南。

从支持库的修订版 21 开始,SwipeRefreshLayout 现在显示一个圆形指示器。
当您开始向下滑动时,指示器有一个箭头(表示刷新)。当你释放它时,它会失去箭头并开始旋转。

现在我们仍然可以设置配色方案,进度条会在颜色之间循环。

那么我们应该使用哪些颜色呢?

让我们看看 Google I/O source code

mSwipeRefreshLayout.setColorSchemeResources(
                R.color.refresh_progress_1,
                R.color.refresh_progress_2,
                R.color.refresh_progress_3);

这里是colors

<color name="refresh_progress_1">@color/theme_accent_2</color>
<color name="refresh_progress_2">@color/theme_accent_1</color>
<color name="refresh_progress_3">@color/theme_primary</color>

所以是的,它是主色和强调色的混合。

【讨论】:

  • 嗯,它现在看起来处于早期状态。顺便说一句,很好的答案。我会多开一点,如果到周末没有更好的,我会接受。
  • 这太糟糕了。他们至少应该让我们选择我们更喜欢哪种设计。他们自己的材料设计风格的应用程序使用栏作为刷新指示器。
  • @Kuno 你可以从这里获得线性进度代码grepcode.com/file/repository.grepcode.com/java/ext/…
  • 是的,这就是我最终的结果。您必须复制 BakedBezierInterpolator、SwipeProgressBar 和 SwipeRefreshLayout。
  • 在colors.xml中创建一个颜色数组并为某些人使用更方便stackoverflow.com/questions/28118038/…
【解决方案2】:

给定的解决方案对我不起作用。

我只是简单地扩展并使用了它。

class SwipeToRefreshLayout(context: Context, attrs: AttributeSet): SwipeRefreshLayout(context, attrs)  {

var listener: OnRefreshListener? = null

fun setRefreshing(refreshing: Boolean, fireCallback: Boolean) {
    super.setRefreshing(refreshing)
    listener?.onRefresh()
}

override fun setOnRefreshListener(listener: OnRefreshListener?) {
    super.setOnRefreshListener(listener)
    this.listener = listener
}
}

我希望有人觉得它有帮助。

【讨论】:

    猜你喜欢
    • 2015-08-15
    • 1970-01-01
    • 1970-01-01
    • 2016-01-01
    • 1970-01-01
    • 2019-02-28
    • 2015-08-13
    • 2017-10-06
    • 2014-09-19
    相关资源
    最近更新 更多