简单的布局
<android.support.v4.widget.SlidingPaneLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/slidingPaneLayout"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<!-- Left side pane. (Master) -->
<FrameLayout
android:id="@+id/leftpane"
android:layout_width="100dp"
android:layout_height="match_parent"
android:layout_gravity="left"
android:background="@android:color/holo_blue_dark" >
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="left"
android:text="Menus" />
</FrameLayout>
<FrameLayout
android:id="@+id/rightpane"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="right"
android:layout_weight="1"
android:background="@android:color/white" >
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:text="Main Content" />
</FrameLayout>
</android.support.v4.widget.SlidingPaneLayout>
简单的使用
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.support.v4.widget.SlidingPaneLayout;
import android.util.Log;
import android.view.View;
public class SlidingLeftPanelActivity extends Activity {
private Context context;
private SlidingPaneLayout pane;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_sliding_left_panel);
context = this;
initViews();
}
private void initViews() {
pane = (SlidingPaneLayout) findViewById(R.id.slidingPaneLayout);
pane.setPanelSlideListener(new PaneListener());
}
private class PaneListener implements SlidingPaneLayout.PanelSlideListener {
@Override
public void onPanelClosed(View view) {
Log.i("tag", "==========onPanelClosed===========");
}
@Override
public void onPanelOpened(View view) {
Log.i("tag", "==========onPanelOpened===========");
}
@Override
public void onPanelSlide(View view, float arg1) {
Log.i("tag", "==========onPanelSlide===========");
}
}
@Override
public void onBackPressed() {
if (pane.isSlideable() && pane.isOpen()) {
pane.closePane();
} else {
super.onBackPressed();
}
}
}
部分可见的侧边菜单与交叉渐变效果的SlidingPaneLayout
http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0208/2435.html
分享到:
相关推荐
`SlidingPaneLayout`是Android Support Library中的一个布局管理器,属于`v4`库,它的主要作用是提供左右滑动的功能,可以将一个大视图(通常是主内容视图)与一个小视图(如侧边栏)结合在一起。当屏幕宽度足够时,...
:running:BGASwipeBackLayout-Android:running: ...[x] 通过修改 support-v4 包中 SlidingPaneLayout 的源码来实现滑动返回布局 [x] 支持非透明主题滑动返回,不影响 Activity 生命周期 [x] 动态设
1. **添加依赖**:在`build.gradle`文件中,确保你已经包含了`android.support.v4`库,因为`SlidingPaneLayout`位于这个库中。 2. **XML布局**:在你的布局XML文件中,将`SlidingPaneLayout`作为根视图或者包含其他...
`SlidingPaneLayout`是Android Support Library v4包的一部分,它是一个布局管理器,可以容纳两个子视图:主视图和滑动视图。默认情况下,主视图占据屏幕的全部宽度,而滑动视图则隐藏在主视图的左侧。当用户向右...
问题描述: ViewPager和SlidingPaneLayout的滑动事件冲突。 问题分析: 在手指左右滑动时,SlidingPaneLayout会...import android.support.v4.widget.SlidingPaneLayout; import android.util.AttributeSet; import and
问题描述: ViewPager和SlidingPaneLayout的滑动事件冲突。 问题分析: 在手指左右滑动时,SlidingPaneLayout会...import android.support.v4.widget.SlidingPaneLayout; import android.util.AttributeSet; import and
8. **第三方库支持**:除了手动实现,还可以借助第三方库如`androidx.slidingpanelayout.widget.SlidingPaneLayout`(原生AndroidX库)或`android.support.v4.widget.SlidingPaneLayout`(Android Support Library)...
如果需要支持Android旧版本,应使用`android.support.v4.widget.DrawerLayout`和`android.support.design.widget.NavigationView`,这两个组件属于Android Support Library,确保在较低API级别的设备上也能正常工作...
SlidingUpPaneLayout ...您可以上下滑动来滑动顶视图,就像android.support.v4.widget.SlidingPaneLayout一样,但方向是垂直的。 顶视图是可滑动的,而底视图是固定的。 ##截屏 ##执照 随意使用:)
同时,也可以考虑使用一些现有的开源库,如 `androidx.drawerlayout.widget.DrawerLayout` 或 `androidx.slidingpanelayout.widget.SlidingPaneLayout`,它们提供了更多的定制选项和更好的性能优化。
通常,可以借助`android.support.v4.widget.SlidingPaneLayout`库来支持低版本设备。 8. **样式和主题**:`SlidingPaneLayout`可以与主题和样式相结合,以提供一致的用户体验。通过设置主题属性,可以更改滑动面板...
在Android中,SliderDrawer可以通过Android提供的`android.support.v4.widget.SlidingPaneLayout`或自定义View来实现。 在"SliderDemo"这个简单的Demo中,开发者可能已经展示了如何创建和控制SliderDrawer的基本...
Slide Menu 在安卓开发中主要有两种实现方式:一种是通过第三方库,如Android Design Support Library中的`NavigationView`,另一种是自定义视图实现,比如使用`SlidingPaneLayout`或者基于手势检测进行定制。...
2. 如果需要在较旧版本的Android上实现类似功能,可以考虑使用第三方库,如`android.support.v4.widget.SlidingPaneLayout`。 3. 考虑到无障碍性,确保在抽屉视图中包含适当的焦点和触摸反馈。 ### 总结 ...
为了解决兼容性问题,你可能需要使用支持库,如`android.support.v4.widget.SlidingPaneLayout`,或者完全自定义组件以保持一致性。 7. **布局属性**:在XML布局文件中,你需要为自定义的SlidingDrawer指定必要的...
`v7.app.ActionBarDrawerToggle`和`v4.widget.SlidingPaneLayout`等组件可以帮助实现侧滑菜单。 5. **Right-top Corner Pop-up Menu**:关于仿微信右上角弹出菜单,可以使用`PopupMenu`类来创建,它会在指定的View...
这个东西是Support V4中早就存在的,同样是侧滑,远没有侧滑菜单android.support.v4.widget.DrawerLayout被熟知,这玩意儿13年就有了…那时候我大概还在玩泥巴… SlidingPaneLayout继承自GroupVie
实现这一效果通常有两种方式:使用Android官方提供的`android.support.v4.widget.DrawerLayout`组件或第三方库如`SlidingPaneLayout`。抽屉布局通常与`NavigationView`配合使用,可以方便地添加自定义视图和菜单项。...
在Android开发中,实现侧边栏Slide Menu有多种方式,如使用`android.support.v4.widget.DrawerLayout`或者第三方库,如`SlidingPaneLayout`、`Android Design Support Library`中的`NavigationView`等。这个名为...
1. 使用`android.support.v4.widget.DrawerLayout`,这是Android官方提供的实现侧滑菜单的组件。通过在主布局中嵌套`DrawerLayout`,并添加一个滑动视图(通常是`NavigationView`),配合`ActionBarDrawerToggle`...