作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
当我使用 SlidingUpPanelLayout
时,我必须设置两个子布局(主要和面板)。当第二个布局(面板)打开时,我想使用 Button
关闭它。但是我找不到方法。
方法是什么?
最佳答案
最后一个版本在底部
如果我理解你的话,你想在第二个 view
打开时实现一个 listener
对吗?
这样做的方法是这样的:
首先声明一个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
}
});
希望对您有所帮助!编码愉快!
编辑:如果您想关闭和/或打开 Pane ,类中有两个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
关于android - 关于 com.sothree.slidinguppanel.SlidingUpPanelLayout,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22827651/
我正在使用 umano's SlidingUpPanel library在我的项目中,但是当我尝试运行该应用程序时,出现了 InflateException。 android.view.Inflate
当我使用 SlidingUpPanelLayout 时,我必须设置两个子布局(主要和面板)。当第二个布局(面板)打开时,我想使用 Button 关闭它。但是我找不到方法。 方法是什么? 最佳答案 最后
我是一名优秀的程序员,十分优秀!