Positioning AndroidSlidingUpPanel to a specific he

2019-05-28 11:05发布

问题:

I am exploring https://github.com/umano/AndroidSlidingUpPanel library. When I slide the bottom panel, on slide complete it acquires complete screen area.

Can anyone help me, How to stop the bottom panel to a certain height, for e.g. slide it till middle of screen??

回答1:

Have you considered using setAnchorPoint(float)?

From the DemoActivity in the SlidingUpPanelDemo project

SlidingUpPanelLayout layout = (SlidingUpPanelLayout) findViewById(R.id.sliding_layout);
layout.setAnchorPoint(0.3f);

this will make the panel slide to 30% of the screen height.



回答2:

+1 to @Guilio Prina Ricotti answer. To make it work, after you call

SlidingUpPanelLayout layout = (SlidingUpPanelLayout)findViewById(R.id.sliding_layout);
layout.setAnchorPoint(0.3f);

in the code, which triggers your slidind layout (for example, onClickListener), instead of calling slidingLayout.setPanelState(SlidingUpPanelLayout.PanelState.EXPANDED); call

slidingLayout.setPanelState(SlidingUpPanelLayout.PanelState.ANCHORED);

Also don't forget to make your sliding component's height to be match_parent



回答3:

yo can add android:layout_weight="0.85"

to your second child of SlidingUpPanelLayout