当我使用SlidingUpPanelLayout
时,我必须设置两个子布局(主和面板)。打开第二个布局(面板)时,我想使用Button
关闭它。但我找不到方法。
方法是什么?
最佳答案
最后一个版本在底部
如果我很理解你,你想在打开第二个listener
时实现aview
对吧?
方法如下:
首先声明一个SlidingUpPanelLayout
:
SlidingUpPanelLayout layout;
然后,在
onCreate()
中初始化它。layout = (SlidingUpPanelLayout) findViewById(R.id.sliding_layout);
之后,如果需要,可以通过以下方式设置其子级可单击:
layout.setEnableDragViewTouchEvents(true);
现在,重要的是这个。将侦听器添加到
layout
layout.setPanelSlideListener(new PanelSlideListener() {
@Override
public void onPanelSlide(View panel, float slideOffset) {
// TODO Auto-generated method stub
}
@Override
public void onPanelCollapsed(View panel) {
// TODO Auto-generated method stub
//Anything you put here is going to happen if the view is closed
}
@Override
public void onPanelExpanded(View panel) {
// TODO Auto-generated method stub
//Anything you put here is going to happen if the view is open
}
@Override
public void onPanelAnchored(View panel) {
// TODO Auto-generated method stub
}
});
我希望这有帮助!快乐编码!
编辑:如果要关闭和/或打开窗格,类中有两个
boolean
方法:layout.collapsePane(true); //to close
layout.expandPane(true); //to open
编辑。当前版本Link to example
layout.setPanelState(SlidingUpPanelLayout.PanelState.COLLAPSED); //to close
layout.setPanelState(SlidingUpPanelLayout.PanelState.EXPANDED); //to open