利用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 ...
随机推荐
- Python 练习
1.有如下值集合 [11,22,33,44,55,66,77,88,99,90...],将所有大于 66 的值保存至字典的第一个key中,将小于 66 的值保存至第二个key的值中.即: {'k1': ...
- 【MySQL】编译安装
安装所需环境: yum install cmake make glibc gcc gcc-c++ libstdc++* sysstat lrzsz libtool libxml* libtool-lt ...
- 【WCF全析(二)】--服务配置部署详解
上篇文章主要讨论了WCF的基本内容,其中包括WCF的术语.创建方法及WCF在开发过程中使用的意义,它不仅能够提供程序之间的通信,而且还能提供程序和数据间的通信,WCF提供了多样化的程序 ...
- leetcode 189
189. Rotate Array Rotate an array of n elements to the right by k steps. For example, with n = 7 and ...
- PPP(杜撰)
最开始,电话线入户,用户买来电脑想上网,最简便的方法想办法利用电话线来实现. 最后想了个法子,用电脑的UART的口连到电话线上: 网络提供商一段也用UART为用户提供网络服务: 那么问题来了,UART ...
- iOS不用调用,running time自动执行方法
拿友盟举例子 友盟比较好使,友盟看了他们的文档 他告诉你你要在 appdelegate didFinishLaunch方法里面写了这个东西 [UMSocialData setAppKey:@" ...
- C语言中如何产生随机数
今天看到一段小程序 ,里面用到随机数.才发现在C语言中产生随机数不像matlab中那么简单. C中也有rand()函数,但是rand()函数产生的数不是真正意义上的随机数,是一个伪随机数,是根据一个数 ...
- 实时消息平台NSQ的特性
NSQ是GO语言开发的可用于大规模系统中的实时消息服务,但是和RabbitMQ等相比,它具有什么特色,什么场景下选择NSQ呢? NSQ的自身特色很明显,最主要的优势在如下三个方面: 1,性能.在多个著 ...
- python基础知识---正则
一.python正则简介 python的re模块,让python能够支持perl正则 perl正则的字符集("." "[abc]" "(abc) ...
- MSSQL日志传送出现“LSN 太晚,无法应用到数据库”
一个月之前配置了日志传送的数据库,在今天早上收到作业警报:"LSRestore_ServerName_Databasename"运行失败,到历史记录中查看,错误信息如下 消息 20 ...