blu*_*are 1 android material-design bottom-sheet
我正在开发一个应用程序,可以实现BottomSheet类似谷歌的材料设计.我发现的只是一个可以添加到Sheet的静态动作,就像这样使用这个库BottomSheet:
new BottomSheet.Builder(this).title("title").sheet(R.menu.list).listener(new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
switch (which) {
case R.id.help:
q.toast("Help me!");
break;
}
}
}).show();
Run Code Online (Sandbox Code Playgroud)
在这里,R.menu.list将静态动作加载到BottomSheet.我想要的是向它添加动态操作项,例如,一个ArrayList动作.任何的想法?
顺便说一下,我试着在我的问题中添加这个标签"bottom-sheet",但我没有特权.
你可以用.sheet()方法做到这一点:
BottomSheet bottomSheet = new BottomSheet.Builder(getActivity())
.title(R.string.sharing_warning_note)
.sheet(R.id.menu_facebook, facebookDrawable,
getString(R.string.publishing_settings_facebook))
.sheet(R.id.menu_vkontakte, vkontakteDrawable,
getString(R.string.publishing_settings_vkontakte))
.divider()
.listener(new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
switch (which) {
case R.id.menu_facebook:
share(SocialNetworkType.FACEBOOK);
break;
case R.id.menu_vkontakte:
share(SocialNetworkType.VK);
break;
default:
}
}
})
.build();
bottomSheet.show();
Run Code Online (Sandbox Code Playgroud)
-UPDATE-
使用数组列表,您可以这样:
BottomSheet bottomSheet = new BottomSheet.Builder(getActivity());
for (int i = 0; i<list.size(); i++) {
String s = list.get(i);
bottomSheet.sheet(i, null, s);
}
bottomSheet.build();
bottomSheet.show();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1541 次 |
| 最近记录: |