博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android基础:SlidingDrawer知识
阅读量:6451 次
发布时间:2019-06-23

本文共 2162 字,大约阅读时间需要 7 分钟。

SlidingDrawer抽屉,主要有handler和content组成,handler一般是图片,cotent随意,基本的方法主要有

open()、animateOpen()、close()、animateClose()、SlidingDrawer.setOnDrawerOpenListener()、SlidingDrawer.setOnDrawerCloseListener()

lock()、unlock(), 系统自带的抽屉可以从下往上、或者从右往左拉开,通过orientation来设置,如果要使SlidingDrawer按指定高度拉开,应该放到Relativelayout中,同时设置alignParentBotom为true.

<?xml version=
"1.0" 
encoding=
"utf-8"
?>
<RelativeLayout xmlns:android=
"http://schemas.android.com/apk/res/android"
    
android:layout_width=
"match_parent"
    
android:layout_height=
"match_parent"
    
android:orientation=
"vertical" 
>
 
    
<SlidingDrawer
        
android:id=
"@+id/slidingdrawer"
        
android:layout_width=
"fill_parent"
        
android:layout_height=
"400px"
        
android:content=
"@+id/content"
        
android:handle=
"@+id/handler"
        
android:orientation=
"horizontal"
        
android:layout_alignParentBottom=
"true" 
>
 
        
<ImageView
            
android:id=
"@id/handler"
            
android:layout_width=
"wrap_content"
            
android:layout_height=
"wrap_content"
            
android:src=
"@drawable/handler" 
/>
 
        
<TextView
            
android:id=
"@+id/content"
            
android:layout_width=
"fill_parent"
            
android:layout_height=
"fill_parent"
            
android:text=
"测试。。。。。。。。"
            
android:textSize=
"18px"
            
android:gravity=
"center_vertical"
            
android:background=
"#ff00ff00" 
/>
    
</SlidingDrawer>
 
</RelativeLayout>

 

        
handler = (ImageView) findViewById(R.id.handler);
        
content = (TextView) findViewById(R.id.content);
        
slidingdrawer = (SlidingDrawer) findViewById(R.id.slidingdrawer);
        
slidingdrawer.open();
        
slidingdrawer.setOnDrawerOpenListener(
new 
OnDrawerOpenListener() {
             
            
@Override
            
public 
void 
onDrawerOpened() {
                
handler.setImageDrawable(MainActivity.
this
.getResources().getDrawable(R.drawable.p));
                
ScaleAnimation anim =
new 
ScaleAnimation(
0
.0f,
1
.0f,
0
.0f,
1
.0f);
                
anim.setDuration(
1000
);
//              slidingdrawer.setAnimation(anim);
//              slidingdrawer.startAnimation(anim);
                 
            
}
        
});
        
slidingdrawer.setOnDrawerCloseListener(
new 
OnDrawerCloseListener() {
             
            
@Override
            
public 
void 
onDrawerClosed() {
                
handler.setImageDrawable(MainActivity.
this
.getResources().getDrawable(R.drawable.handler));
                
/**锁定slidingdrawer.lock();**/
//              slidingdrawer.lock();
            
}
        
});

 本文转自demoblog博客园博客,原文链接http://www.cnblogs.com/0616--ataozhijia/archive/2012/11/01/2750165.html如需转载请自行联系原作者

demoblog

你可能感兴趣的文章
创建表-sqlite 基础教程(5)
查看>>
iOS里常见的几种信息编码、加密方法简单总结
查看>>
STL 迭代器
查看>>
NSCoder
查看>>
c#FTP操作类,包含上传,下载,删除,获取FTP文件列表文件夹等Hhelp类
查看>>
as类库
查看>>
C#倒计时软件
查看>>
JavaScript ,Python,java,Go系列算法之【选择排序】篇
查看>>
SQL Server中常用全局变量介绍
查看>>
asp.net 遍历xml 及 Repeater 绑定xml
查看>>
Linux 使用 yum 查看安装的软件包
查看>>
R语言中的block Gibbs吉布斯采样贝叶斯多元线性回归
查看>>
解决Android3.0之后不能在主线程中进行HTTP请求
查看>>
正则表达式
查看>>
结对编程总结
查看>>
结对作业——潘学
查看>>
冷备份恢复
查看>>
Pipeline MIPS Processor MIPS processor in C++
查看>>
Python3_Str
查看>>
awt简单应用案例四-复选框checkbox
查看>>