对于早期的 L 预览版,有一些如下所示的示例可以添加到您的代码中,以便使用 FAB( float 操作按钮)。
但不幸的是,由于不再支持 setOutline 方法,我无法使用相同的代码来实现 FAB,但它似乎已被替代方法“fab.setOutlineProvider(ViewOutlineProvider);”所取代。谁能解释一下如何使用它?...
这可能是我所缺少的非常简单的东西,但我们将不胜感激任何帮助。
// Outline
int size = getResources().getDimensionPixelSize(R.dimen.fab_size);
Outline outline = new Outline();
outline.setOval(0, 0, size, size);
Button fab = (Button) findViewById(R.id.fab);
fab.setOutline(outline);
fab.setClipToOutline(true);
最佳答案
只是为了完成@ianhanniballake 的回答:
Button fab = (Button) findViewById(R.id.fab);
//Outline outline = new Outline();
//outline.setOval(0, 0, size, size);
//fab.setOutline(outline);
ViewOutlineProvider viewOutlineProvider = new ViewOutlineProvider() {
@Override
public void getOutline(View view, Outline outline) {
// Or read size directly from the view's width/height
int size = getResources().getDimensionPixelSize(R.dimen.fab_size);
outline.setOval(0, 0, size, size);
}
};
fab.setOutlineProvider(viewOutlineProvider);
关于android - 如何在 Lollipop 中使用 setOutlineProvider 而不是 setOutline,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26472955/