首页 > 移动平台 > 详细

开源项目之Android StandOut(浮动窗口)

时间:2014-01-17 15:18:39      阅读:869      评论:0      收藏:0      [点我收藏+]

StandOut 是一个在Android应用中创建浮动窗口的框架,使用该框架可以方便的创建各种浮动窗口。可以指定窗口大小、放置的位置、是否可以拖动、是否可以最小化、可以在通知栏显示提示等等。

项目如图:

bubuko.com,布布扣

bubuko.com,布布扣

bubuko.com,布布扣

 

主要项目StandOut:

public abstract class StandOutWindow extends Service   //扩展这个类可以轻松地创建和管理的浮动出色的窗口  这是一个后台服务通过Window产生布局视图。

public class WindowCache   //窗体缓存

public class Window extends FrameLayout  //浮动窗体视图 

 

实例项目FloatingFolders:

public class AppAdapter extends ArrayAdapter<ActivityInfo>  //程序自定义视图

public final class FloatingFolder extends StandOutWindow  //只要继承 wei.mark.standout.StandOutWindow类 ,重写(Override)各种函数即可实现浮动窗体

 

[html] view plaincopy
 
  1. public class FloatingFoldersLauncher extends Activity {  
  2.     /** Called when the activity is first created. */  
  3.     @Override  
  4.     public void onCreate(Bundle savedInstanceState) {  
  5.         super.onCreate(savedInstanceState);  
  6.   
  7.         StandOutWindow.closeAll(this, FloatingFolder.class);  
  8.         FloatingFolder.showFolders(this);  
  9.           
  10.         finish();  
  11.     }  
  12. }  


实例项目StandOutExample:

 

 

[html] view plaincopy
 
  1. public class StandOutExampleActivity extends Activity {  
  2.     /** Called when the activity is first created. */  
  3.     @Override  
  4.     public void onCreate(Bundle savedInstanceState) {  
  5.         super.onCreate(savedInstanceState);  
  6.   
  7.         StandOutWindow.closeAll(this, SimpleWindow.class);  
  8.         StandOutWindow.closeAll(this, MultiWindow.class);  
  9.         StandOutWindow.closeAll(this, WidgetsWindow.class);  
  10.   
  11.         // show a MultiWindow, SimpleWindow  
  12.   
  13.         StandOutWindow  
  14.                 .show(this, SimpleWindow.class, StandOutWindow.DEFAULT_ID);  
  15.         StandOutWindow.show(this, MultiWindow.class, StandOutWindow.DEFAULT_ID);  
  16.         StandOutWindow.show(this, WidgetsWindow.class,  
  17.                 StandOutWindow.DEFAULT_ID);  
  18.   
  19.         // show a MostBasicWindow. It is commented out because it does not  
  20.         // support closing.  
  21.   
  22.         /*  
  23.          * StandOutWindow.show(this, StandOutMostBasicWindow.class,  
  24.          * StandOutWindow.DEFAULT_ID);  
  25.          */  
  26.   
  27.         finish();  
  28.     }  
  29. }  
[html] view plaincopy
 
  1. public class MostBasicWindow extends StandOutWindow {  
  2.   
  3.     @Override  
  4.     public String getAppName() {  
  5.         return "MostBasicWindow";  
  6.     }  
  7.   
  8.     @Override  
  9.     public int getAppIcon() {  
  10.         return android.R.drawable.btn_star;  
  11.     }  
  12.   
  13.     @Override  
  14.     public void createAndAttachView(int id, FrameLayout frame) {  
  15.         TextView view = new TextView(this);  
  16.         view.setText("MostBasicWindow");  
  17.         view.setBackgroundColor(Color.CYAN);  
  18.   
  19.         frame.addView(view);  
  20.     }  
  21.   
  22.     @Override  
  23.     public StandOutLayoutParams getParams(int id, Window window) {  
  24.         return new StandOutLayoutParams(id, 200, 150, 100, 100);  
  25.     }  
  26. }  

其它的同上!

 

 

源码简单实用!

开源项目之Android StandOut(浮动窗口)

原文:http://www.cnblogs.com/weixiao870428/p/3524030.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!