Android弹出窗口的实现(PopupWindow)


最近看到新浪微博顶部栏的微博分组效果很炫,从网上查了一些资料明白原来是用PopupWindow实现的,今天自己也写了一个例子实现了这种效果,希望对大家有帮助。

PopupWindow就是弹出窗口的意思,类似windows下面的开始按钮。PopupWindow可以实现浮层效果,而且可以自定义显示位置,出现和退出时的动画.

更多Android相关信息见Android 专题页面 http://www.bkjia.com/topicnews.aspx?tid=11

首先定义新浪微博的顶部栏,title_two_button.xml和main.xml

  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"  
  3.     android:layout_width="fill_parent"  
  4.     android:layout_height="wrap_content" >  
  5.   
  6.     <TextView  
  7.         android:id="@+id/tvtitle"  
  8.         android:layout_width="fill_parent"  
  9.         android:layout_height="45dip"  
  10.         android:background="@drawable/search_bg"  
  11.         android:gravity="center"  
  12.         android:text="天堂没有路"  
  13.         android:textColor="@color/black"  
  14.         android:textSize="25dip" />  
  15.   
  16.     <Button  
  17.         android:id="@+id/btn_title_left"  
  18.         android:layout_width="50dip"  
  19.         android:layout_height="35dip"  
  20.         android:layout_gravity="center_vertical"  
  21.         android:background="@drawable/title_button"  
  22.         android:textColor="@color/white" />  
  23.   
  24.     <Button  
  25.         android:id="@+id/btn_title_right"  
  26.         android:layout_width="50dip"  
  27.         android:layout_height="35dip"  
  28.         android:layout_gravity="right"  
  29.         android:layout_marginRight="2dip"  
  30.         android:layout_marginTop="4dip"  
  31.         android:background="@drawable/title_button2"  
  32.         android:textColor="@color/white" />  
  33.   
  34. </FrameLayout>  
 
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  
  3.     android:layout_width="fill_parent"  
  4.     android:layout_height="fill_parent"  
  5.     android:background="@android:color/white"  
  6.     android:orientation="vertical" >  
  7.   
  8.     <include  
  9.         android:id="@+id/top_title"  
  10.         layout="@layout/title_two_button" />  
  11.   
  12. </LinearLayout>  
主要是为了实现一个这样的界面:

 

  • 1
  • 2
  • 3
  • 下一页

相关内容