Android新组件应用
16lz
2021-01-25
-
CheckedTextView
替代LineaLayout + TextView + ImageView
构造单选项 -
Chronometer
替代RxJava.interval + TextView
-
StackView
类似Android的多任务的布局 -
QuickContactBadge
图片,点击会自动链接通讯录 -
Space
代替margin,因为onDraw()
方法为空,所以不会渲染,包括事件处理都无效 -
TextClock
时间显示 -
ToggleButton
配合android:button="@drawable/sel"
可以实现Switch
效果//去除右下角小三角图标quickContactBadge.assignContactFromPhone("13012345678", false)val f = quickContactBadge::class.java.getDeclaredField("mOverlay")f.isAccessible = truef.set(quickContactBadge, null)
-
TextSwitcher
替代ViewFlipper
实现滚动条效果textSwitcher.setFactory { val tv = TextView(this@MainActivity) tv.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 16.0f) tv.setTextColor(Color.RED) return@setFactory tv}textSwitcher.inAnimation = AnimationUtils.loadAnimation(this, R.anim.anim_in);textSwitcher.outAnimation = AnimationUtils.loadAnimation(this, R.anim.anim_out);Observable.interval(1000L, 3000L, TimeUnit.MILLISECONDS) .observeOn(AndroidSchedulers.mainThread()) .subscribe { textSwitcher.setText((Random().nextInt()).toString()) }
anim_in:
anim_out:
-
PopupMenu
类似QQ的右上角"+"效果PopupMenu popupMenu = new PopupMenu(Main8Activity.this, view); //view:PopupMenu绑定的view,一般绑定在触发事件按钮popupMenu.getMenuInflater().inflate(R.menu.popup, popupMenu.getMenu()); //添加menu资源 // 或者popupMenu.inflate(R.menu.popup);popupMenu.setOnMenuItemClickListener(...); //点击事件popupMenu.setGravity(Gravity.END); //设置显示的位置popupMenu.show();
需要创建一个menu文件
在res/menu 文件夹下创建一个menu文件,此处menu文件名popup,在inflate方法中引用设置该menu文件
更多相关文章
- 一款常用的 Squid 日志分析工具
- GitHub 标星 8K+!一款开源替代 ls 的工具你值得拥有!
- RHEL 6 下 DHCP+TFTP+FTP+PXE+Kickstart 实现无人值守安装
- Linux 环境下实战 Rsync 备份工具及配置 rsync+inotify 实时同步
- android初涉JNI
- Android(安卓)开发工具(以后持续更新)
- Android日历操作
- android避免回复出厂设置导致数据丢失的办法
- android生成的apk文件反编译源代码然后修改