很多Android应用开发者可能习惯了常见的ListView和GirdView其实,Google还提供了一些不错的UI控件,丰富了Android应用的UI显示,只要了解View和Adapter之间的关系,相信你可以很方便的了解每个种控件的使用和扩展,今天Android123一起来谈下,鲜为人知的Android UI控件。
1. SlidingDrawer 抽屉式滑动控件
在Android 1.x时代,功能表是通过Home Screen底部的一个按钮,可以拖拉出来一个View,这种控件其实Android上从1.5开始加入,使用时直接在layout中定义即可,xml布局代码如下: 当然了下面的match_parent就是fill_parent在2.2中被重命名了
<SlidingDrawer
android:id="@+id/drawer"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:handle="@+id/handle"
android:content="@+id/content">
<ImageView
android:id="@id/handle"
android:layout_width="88dip"
android:layout_height="44dip" />
<GridView
android:id="@id/content"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</SlidingDrawer>
有关控制,大家可以看下Android 1.5或1.6的Launcher源码,这里SlidingDrawer主要实现了voidsetOnDrawerCloseListener(SlidingDrawer.OnDrawerCloseListener onDrawerCloseListener) 和
voidsetOnDrawerOpenListener(SlidingDrawer.OnDrawerOpenListener onDrawerOpenListener) 以及 voidsetOnDrawerScrollListener(SlidingDrawer.OnDrawerScrollListener onDrawerScrollListener)
这三个接口,可以获取抽屉控件的打开,关闭和拉动,同时本类提供了很多方法,详细的大家可以在Android SDK中的android.widget.SlidingDrawer分支查看
2. PopupWindow 气球提示控件
有关PopupWindow可以让我们想起Android刚刚开始有输入法框架的时候,当用户按下屏幕软键盘时,弹出的气球提示,这个View可以用PopupWindow来实现,PopupWindow比较方便的就是可以浮动在一个Activity中,设置成为透明或什么可以当做工具栏来使用。具体的大家可以翻看GIT代码中有关Android输入法的代码了解。
3. HorizontalScrollView 水平滚动容器
如果我们想实现一个类似Visual C++中的GridCtrl表格控件时,可能发现ListView可以上下滚动,但水平滚动遇到了些问题,其实在HorizontalScrollView中套嵌ListView即可,不过这里Android123要说的是由于ListView和ScrollView的内部存在一些冲突,我们需要派生ListView类,重写下onMeasure(int, int)方法,修改下显示范围即可,正常实现。

转自:http://www.eoeandroid.com/thread-39987-1-15.html

更多相关文章

  1. [Android]混淆代码后生成带签名的apk
  2. 用shape美化控件
  3. Android代码内存优化建议-Android资源篇
  4. 在Ubuntu16.04上下载并编译Android内核源代码
  5. Android实用代码片段(一)
  6. fanfou(饭否) android客户端 代码学习1
  7. android短信发送器源代码

随机推荐

  1. Android之socket编程实例,熟悉socket使用
  2. Android 语音识别示例
  3. Android listview 利用反射的自动绑定Ada
  4. Android Market排名算法及规则
  5. android bind service 学习笔记
  6. Android:widget 用法总结
  7. android webview onJsAlert只调用一次的
  8. android虚拟机加载img
  9. 【方案汇总】在C/C++中使用Android Log导
  10. Android中的安全与访问权限控制