中国优质的IT技术网站
专业IT技术创作平台
IT职业在线教育平台
PageSlider是用于实现整页切换.效果图:
PageSlider
<PageSlider ohos:id="$+id:pager_slider" ohos:height="match_parent" ohos:width="match_parent"/>
2. 在Slice中实例化PageSlider,设置数据
public class MainAbilitySlice extends AbilitySlice { @Override public void onStart(Intent intent) { super.onStart(intent); super.setUIContent(ResourceTable.Layout_ability_main); PageSlider pageSlider = (PageSlider) findComponentById(ResourceTable.Id_pager_slider); LayoutScatter layoutScatter = LayoutScatter.getInstance(getContext()); Component component1 = layoutScatter.parse(ResourceTable.Layout_page1, null, false); Component component2 = layoutScatter.parse(ResourceTable.Layout_page2, null, false); List<Component> components = new ArrayList<>(); components.add(component1); components.add(component2); pageSlider.setProvider(new PageSliderProvider() { @Override public int getCount() { return components.size(); } @Override public Object createPageInContainer(ComponentContainer componentContainer, int i) { componentContainer.addComponent(components.get(i)); return components.get(i); } @Override public void destroyPageFromContainer(ComponentContainer componentContainer, int i, Object o) { componentContainer.removeComponent(components.get(i)); } @Override public boolean isPageMatchToObject(Component component, Object o) { return component == o; } }); } }
<?xml version="1.0" encoding="utf-8"?> <DirectionalLayout xmlns:ohos="http://schemas.huawei.com/res/ohos" ohos:height="match_parent" ohos:width="match_parent"> <Text ohos:height="match_parent" ohos:width="match_parent" ohos:text="PageSlider1" ohos:text_alignment="center" ohos:text_size="25fp"/> </DirectionalLayout>
<?xml version="1.0" encoding="utf-8"?> <DirectionalLayout xmlns:ohos="http://schemas.huawei.com/res/ohos" ohos:height="match_parent" ohos:width="match_parent"> <Text ohos:height="match_parent" ohos:width="match_parent" ohos:text="PageSlider2" ohos:text_alignment="center" ohos:text_size="25fp"/> </DirectionalLayout>
https://gitee.com/hspbc/harmonyos_demos/tree/master/pageSliderDemo
微信扫码分享