吃过饭,有没有太写代码的愿望,就开始想今天工作中遇到的问题了。

有一个很有意思的东西就是Dialog,这个是基础的组件:

我们会在一些地方需要自定义弹出窗,可是用popUpWindow太小题大作,用弹出式的Activity有时数据传参之类又有点麻烦,还是dialog好,可以随意的改动。

就让我们来看看我遇到的问题吧。

我想在点击一个Button时选择是相册还是相机,就这么一个弹出式的window,我刚开始想用AlterDialog,可是在设置alterDialog时,需要先调用show()再调用setContentView(),这个实在是太不科学(不知道各位对AlterDialog有什么想法或我用AlterDialog在这里是不是有点问题)。

一怒之下用了Dialog。

先创建一个Dailog:

1
upLoadPd = new Dialog(mActivity, R.style.NoBoundDialog);

这个样式也奉上:

1
2
3
4
5
6
7
8
9
10
<style name="NoBoundDialog" parent="android:style/Theme.Dialog">  
       <item name="android:windowFrame">@null</item>  
       <item name="android:windowIsFloating">true</item>  
       <item name="android:windowIsTranslucent">true</item>  
       <item name="android:windowNoTitle">true</item>  
       <item name="android:background">@android:color/transparent</item>  
       <item name="android:windowBackground">@android:color/transparent</item>  
       <item name="android:backgroundDimEnabled">true</item>  
       <item name="android:backgroundDimAmount">0.6</item>  
   </style>

这个样式很重要,一些参数可能会根据你的需要来设置。

下面就是要向Dialog中添充视图了:

1
2
3
4
LayoutInflater inflater = mActivity.getLayoutInflater();  
        View view = inflater.inflate(R.layout.best_beautiful_libs_publish_result, null);  
        ………………………………  
        upLoadPd.setContentView(view);

若是View里需要点击事件之类的,果断地添加响应事件。

ok,需要调用时就直接show()吧。

刚开始写博客,文笔和思路不是很清晰,希望大家理解下。


Email:ownwell@126.com

Cyning

2013-10-08 20:29:28


最新文章

  1. Oracle学习笔记十四 内置程序包
  2. 【hihoCoder】1148:2月29日
  3. oracle对象类型
  4. 【python】闰年规则
  5. Java开发手册
  6. POJ1159 Palindrome(dp)
  7. HDU 5417 Victor and Machine
  8. pca图像识别
  9. ASP.NET开发的大型网站有哪些架构方式
  10. Get json formatted string from web by sending HttpWebRequest and then deserialize it to get needed data
  11. 浅析Java源码之ArrayList
  12. cropper截图不压缩PHP上传裁剪后的图片
  13. 踩坑学习python自动化测试第一天!
  14. MongoDB 学习记录(一)
  15. Hive记录-Hive常用命令操作
  16. Github好桑心,慢慢来吧,等待中
  17. fastjson 过滤不需要的字段或者只要某些字段
  18. leetcode关于数组的问题
  19. 关于Unity中表面着色器的使用
  20. mongo远程登录

热门文章

  1. Spark生态之Spark Core
  2. homework-1
  3. Java集合框架之LinkedList-----用LinkedList模拟队列和堆栈
  4. mybatis中为sql中传值#{}和${}的区别
  5. linux性能问题(CPU,内存,磁盘I/O,网络)
  6. POJ 1151 Atlantis (扫描线+线段树)
  7. Unity3D之ScriptableObject学习笔记
  8. java读取properties的工具类PropertiesUtil
  9. Java:浅谈InputStream的close方法
  10. PL/pgSQL的RETURN QUERY例子