利用SlidingPaneLayout实现侧滑
利用SlidingPaneLayout实验仿QQ侧滑效果
1.效果图

2.布局文件
<?xml version="1.0" encoding="utf-8"?>
<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"> <FrameLayout
android:layout_width="200dp"
android:layout_height="match_parent"> <LinearLayout
android:id="@+id/full_left"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="5dp"
android:background="#65c7fa"
android:orientation="vertical"> <TextView
android:layout_width="match_parent"
android:layout_height="60dp"
android:background="#ffffff"
android:gravity="center"
android:text="我的功能标签"
android:textColor="#000000"
android:textSize="20sp"
android:textStyle="bold" /> <Button android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#65c7fa"
android:onClick="baidu"
android:text="百度"
android:textColor="#ffffff" /> <Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#65c7fa"
android:onClick="qq"
android:text="QQ"
android:textColor="#ffffff" /> <Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#65c7fa"
android:onClick="wangyi"
android:text="网易"
android:textColor="#ffffff" /> <Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#65c7fa"
android:onClick="sina"
android:text="新浪"
android:textColor="#ffffff" />
</LinearLayout>
</FrameLayout> <WebView
android:id="@+id/webview"
android:layout_width="match_parent"
android:layout_height="match_parent" /> </android.support.v4.widget.SlidingPaneLayout>
3.Java代码
import android.support.v4.widget.SlidingPaneLayout;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.MotionEvent;
import android.view.View;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.LinearLayout; public class MainActivity extends AppCompatActivity { SlidingPaneLayout mSlidingPaneLayout;
View mFullLeft; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); mSlidingPaneLayout = (SlidingPaneLayout) findViewById(R.id.slidingpanelayout);
mFullLeft = findViewById(R.id.full_left); mFullLeft.setAlpha(0);//默认 full侧栏隐藏 显示最小-预览式的侧栏 mWebView = (WebView) findViewById(R.id.webview); WebSettings settings = mWebView.getSettings();
settings.setJavaScriptEnabled(true);
WebViewClient client = new WebViewClient();
mWebView.setWebViewClient(client); mSlidingPaneLayout.setPanelSlideListener(new SlidingPaneLayout.PanelSlideListener() {
@Override
public void onPanelSlide(View panel, float slideOffset) {
//slideOffset: close left->open left from 0-1
System.out.println("slide" + slideOffset);
//view.setalpha(0~1)
//full完全显示时small就应完全不可见
mFullLeft.setAlpha(slideOffset);
} @Override
public void onPanelOpened(View panel) {
System.out.println("opened");
} @Override
public void onPanelClosed(View panel) {
System.out.println("closed");
}
});
} WebView mWebView; public void baidu(View view) {
mWebView.loadUrl("http://www.baidu.com");
} public void qq(View view) {
mWebView.loadUrl("http://www.qq.com");
} public void wangyi(View view) {
mWebView.loadUrl("http://www.163.com");
} public void sina(View view) {
mWebView.loadUrl("http://www.sina.com");
}
}
有借鉴别人的代码,但忘记博主啦,请见谅!!!
利用SlidingPaneLayout实现侧滑的更多相关文章
- Android中禁止SlidingPaneLayout的侧滑功能
Android中使用android.support.v4.widget.SlidingPaneLayout实现侧滑功能的时候,可能出现滑动屏幕时与SlidingPaneLayout的侧滑发生冲突,查看 ...
- 淘宝(阿里百川)手机客户端开发日记第三篇 SlidingPaneLayout实现侧滑菜单
需要的三个布局文件: activity_main.xml :主窗体布局 left.xml : 左侧栏目分类布局 right.xml : 右侧内容详情 需要的组件: android.support.v4 ...
- 利用 MUI开发app, 如何实现侧滑菜单及其主体部分上下滑动
利用mui开发APP 之侧滑菜单主内容滚动问题 MUI作为开发者常用的框架之一,其号称最接近原生APP体验的高性能前端框架.因此利用mui开发移动APP,可以为开发者提供很大的便利和接近原生的体验. ...
- 在 Swift 项目中实现侧滑菜单-利用 SWRevealViewController
你可以完全自己手动写一个侧滑菜单,但是现在在 GitHub 上面已经有很多免费的开源库了,如果不是有很特别的需求,大可不必新建一个轮子. 在这里我使用的这个第三方库名字叫做 SWRevealViewC ...
- 利用开源SlidingMenu框架实现左右侧滑菜单的功能
package com.loaderman.slidingmenudemo; import android.os.Bundle; import android.support.v4.app.Fragm ...
- 史上最简单,一步集成侧滑(删除)菜单,高仿QQ、IOS。
重要的话 开头说,not for the RecyclerView or ListView, for the Any ViewGroup. 本控件不依赖任何父布局,不是针对 RecyclerView. ...
- 一行代码,让你的应用中UIScrollView的滑动与侧滑返回并存
侧滑返回是iOS系统的一个很贴心的功能,特别是在大屏手机上,单手操作的时候去按左上角的返回键特别不方便.当我在使用一个APP的时候,如果控制器不能侧滑返回,我会觉得这个APP十分不友好...这款产品在 ...
- MUI - 侧滑菜单
各大APP必备的侧滑菜单栏,支持手势滑动.包含QQ式.美团式等 结构模板 这里是示例Html, 必须使用Mui框架才能使用. 主容器 <div class="mui-off-canva ...
- android侧滑菜单笔记
一.SlidingPaneLayout v4包下的控件,使用简单,功能简洁.官方文档明确说明该控件只能左侧滑动.使用如下: <android.support.v4.widget.SlidingP ...
随机推荐
- LVM原理及PV、VG、LV、PE、LE关系图
PV(physical volume):物理卷在逻辑卷管理系统最底层,可为整个物理硬盘或实际物理硬盘上的分区.VG(volume group):卷组建立在物理卷上,一卷组中至少要包括一物理卷,卷组建立 ...
- xp和win7安装telnet服务
xp: 有些ghost版本的xp会精简掉telnet服务 首先telnet服务需要的几个文件: tlntadmn.exe tlntsess.exe tlntsvr.exe tlntsvrp.dll 文 ...
- Log.properties配置详解
一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使 ...
- border:none;与border:0;的区别
border:none表示边框样式无,border:0表示边框宽度为0;当定义了border:none,即隐藏了边框的显示,实际就是边框宽度为0. 当定义边框时,必须定义边框的显示样式.因为边框默认样 ...
- js的倒计时在ie下显示NAN的最佳解决办法
写了一个倒计时,原代码如下: var times = new Date(); var timesout = new Date("2016-6-7"); var timesg = t ...
- C#遍历集合与移除元素的方法
如果用foreach,会造成被遍历的集合更改后带来异常问题. 此时,用for循环可有效的解决这个问题. for(int i=0;i<List.Count;i++) { if(条件是真) { Li ...
- delphi中break,continue, exit,abort, halt, runerror的异同
delphi中表示跳出的有break,continue, exit,abort, halt, runerror. 1.break 强制退出循环(只能放在循环中),用于从For语句,while语句或re ...
- QNDataSet打印预览自动关闭问题
问题:打印预览后,数据集自动关闭 解决: TQNDataSet = class(TFDMemTable) private protected procedure PSReset; override; ...
- JCL笔记
本文转自<http://leowzy.iteye.com/blog/888931> ---------------------------------------------------- ...
- AsyncTask介绍
AsyncTask介绍 AsyncTask比Handler更轻量级一些,适用于简单的异步处理. 使用AsyncTask时,注意重写以下几个方法: 1. doInBackground() 作用:执行后台 ...