Design库,所有控件的使用
导入地址com.android.support:design:23.2.0。。输入design搜索到确认就可以。
布局中android.support.design.widget.XXX,调用控件
控件一:FloatingActionButton-浮动的圆形button
属性:布局中加入xmlns:app”http://schemas.android.com/apk/res-auto”
app:backgroundTint=”#ff0000”//设置背景色
app:fabSize=”normal”//包裹src图片,属性mini缩小控件达到src的大小
app:elevation=”5dp”//x轴阴影效果
app:rippleColor=”#000000”//点击效果颜色
控件二:TextInputLayout-优化EditText
属性:必须存放子控件:EditText
代码:textinput.setHint(“这里填写提示信息”);
EditText edittext=textinput.getEditText();
edittext.addTextChangedListener(new TextWatcher(){
方法:beforeTextChanged:
方法:onTextChanged:
if(s.length()>10){
textInput.setError(“username不能超过10位”);//限制10个字节
textInput.setErrorEnabled(true);
}else{
textInput.setErrorEnabled(false);
}
方法:afterTextChanged:
});
控件三:Snackbar- 可交互的提示框(相当于Toast位于bottom)
代码:在控件的点击事件中调用
final Snackbar snackbar=Snackbar.make(btn,”你点击了button”。Snackbar.LENGTH_LONG).show();
snackbar.setAction(“知道了”。new View.OnClickListener(){
snackbar.dismiss();
}
});
控件四:TabLayout 便捷标签
属性:app:tabTextColor=”@android:color/black”//未选中字体颜色
app:tabSelectedTextColor=”@android:color/XXX”//选中字体的颜色
app:tabIndicatorColor=”“//下标指示器的颜色(滑标)
app:tabIndicatorHeight=”“//下标指示器的高度
app:tabMode=”scrollable”//可滑动标签
//背景色直接bg就能够
代码: 获取tabs控件
tabs.addTab(tabs.newTab().setText(“Tab1”));//加入标签名称
加入viewpager一起使用:加入viewpager到布局。
Listtitles=new ArrayList<>();
Listfragments=new ArrayList<>();
for(int i=0;i<4;i++){
String title=”Tab”+(i+1);
tabs.addTab(tabs.newTab().setText(title));
titles.add(title);
Fragment fragment=new JikeFragment(title);
fragments.add(fragment);
}
获取viewpager控件
XXXFragmentAdapter mAdapter=new XXXFragmentAdapter(getSupportFragmentManager(), fragments, titles);
viewpager.setAdapter(mAdapter);
tabs.setupWithViewPager(viewpager);
tabs.setTabsFromPagerAdapter(mAdapter);
创建XXXfragment,在xxxfragment中加入构造函数:
String mTitle;
public xxxfragment(String title){
mTitle=title;
}
在onCreateView中:
text=setText(mTitle);
创建XXXFragmentAdapter
public class XXXFragmentAdapter extends FragmentStatePagerAdapter {
private List<Fragment> mFragments;
private List<String> mTitles;
public EventTabFragmentAdapter(FragmentManager fm, List<Fragment> fragments, List<String> titles) {
super(fm);
mFragments = fragments;
mTitles = titles;
}
@Override
public Fragment getItem(int position) {
return mFragments.get(position);
}
@Override
public int getCount() {
return mFragments.size();
}
@Override
public CharSequence getPageTitle(int position) {
return mTitles.get(position);
}
}
app:contentScrim="#77DB93"//动画结束后显示toolbar //二
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar//设置字体颜色为白色//二
app:layout_collapseMode="parallax"//终于显示图片中间位置
//參数none,终于显示图片底部
//參数bin,依然显示在图片底部无效果
app:layout_collapseParallaxMultiplier="0.8"//调节视觉差,值越小动态效果越快
android:layout_height="?attr/actionBarSize"//系统默认高度
app:layout_scrollFlags="scroll|enterAlways"//上滑隐藏Toolbar/下滑显示Toolbar//二、挪到CTL中//參数enterAlwaysCollapsed仅仅有下滑到第一个控件的时候再显示//參数exitUntilCollapsed配合android:minHeight使用,上滑动隐藏余留一个最小高度,不写最小高度为默认高度
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"//设置背景色为白色(没有作用)
app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"//去除系统默认title
(内部内容
<item name="android:windowActionBar">false</item>
<item name="android:windowNoTitle">true</item>
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
)
//第二部分
app:layout_collapseMode="pin"//固定toolbar不隐藏//參数parallax随着图片缩小Toolbar也随着隐藏,同一时候进行//參数none相当于没加这个属性。效果是Toolbar隐藏掉后再缩小图片
app:layout_behavior="@string/appbar_scrolling_view_behavior"//设置NS位于ABL的下方
Toolbar toolbar;
CollapsingToolbarLayout collapsingtoolbarlayout;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
toolbar=(Toolbar)findViewById(R.id.toolbar);
setSupportActionBar(toolbar);//设置标题栏默认内容。大概意思是设置到activity窗体中
collapsingtoolbarlayout= (CollapsingToolbarLayout) findViewById(R.id.collapsingtoolbarlayout);
collapsingtoolbarlayout.setTitle("美好的一天");
getSupportActionBar().setHomeButtonEnabled(true);//是否使用左上角的返回button
getSupportActionBar().setDisplayHomeAsUpEnabled(true);//显示返回button,是否实现返回到上一页的效果未測 }
Design库,所有控件的使用的更多相关文章
- WPF 引用第三方库的控件在设计器加上设计时数据和属性
本文告诉大家如何在 VisualStudio 2022 的 XAML 设计器中,在设计时给第三方控件加上设计用的属性和数据的方法 此功能要求使用不低于 VisualStudio 2019 的 16.8 ...
- 基于Qt的第三方库和控件
====================== 基于Qt的第三方库和控件 ====================== libQxt -------- http://dev.libqxt.o ...
- HslControls组件库 工业控件库 曲线控件 时间控件 管道控件 温度计控件 阀门控件 传送带控件 进度条控件 电池控件 数码管控件等等
本篇博客主要对 HslControls 组件做一个大概的总览介绍,更详细的内容可以参照页面里的子链接,还有github上的源代码,然后进行相关的学习,和使用. Prepare 先从nuget下载到组件 ...
- WPF开源界面库及控件
WPF开源项目 WPF有很多优秀的开源项目,我以为大家都知道,结果,问了很多人,其实他们不知道.唉,太可惜了! 先介绍两个比较牛逼的界面库 1.MaterialDesignInXamlToolkit ...
- 修复duilib库UISlider控件的4个bug
转载级请注明原出处,谢谢~· 昨天封装好一个音频类,我在为dulib做音频播放demo时发现了一些问题,由CSliderUI控件导致的,进而发现了这个控件的好几样不足,他无法满 足我们做一个播放器的进 ...
- Android开源库集合(控件)
RecycleView: RecycleView功能增强 https://github.com/Malinskiy/SuperRecyclerView RecycleView功能增强(拖拽,滑动删除, ...
- Android Studio使用butterknife库绑定控件ID注解
在线导入butterknife的jar包 在Android-app-Open Module Settings下选中module下的app 选择Dependencies,点击右边的“+”,选择第一个:1 ...
- DS控件库 DSLed控件呈现滚动字幕效果
滚动字幕效果在DSled上可以使用偏移来实现,代码如下 运行效果
- ant design pro: protable控件隐藏【收起】按钮
[collapseRender:()=>false] [效果] [参考ProTable源码]
随机推荐
- 快速掌握C#7
1. out 变量(out variables) 以前我们使用out变量必须在使用前进行声明,C# 7.0 给我们提供了一种更简洁的语法 “使用时进行内联声明” .如下所示: var input = ...
- DOM 介绍
什么时DOM DOM:文档对象模型.DOM为文档提供了结构化表示,并定义了如何通过脚本来范文文档结构.目的起始就是为了能让js操作html元素而指定的一个规范. DOM就是由节点组成的. 解析过程 H ...
- (转)用JS实现表格中隔行显示不同颜色
用JS实现表格中隔行显示不同颜色 第一种: <style> tr{bgColor:expression( this.bgColor=((this.rowIndex)%2==0 )? ...
- java基础学习四
一.java中的基本数据类型 二.double和float精度不准的问题 double和float本身确实存在某种缺陷,不能用于精确计算. 解决办法: 用java.math.BigDecimal,通过 ...
- 学习廖雪峰的Python教程之Python基础
一.缩进 编译器或者解释器就是负责把符合语法的程序代码转换成CPU能够执行的机器码,然后执行. 以#开头的语句是注释,注释是给人看的,可以是任意内容,解释器会忽略掉注释.其他每一行都是一个语句,当语句 ...
- 虚拟机+linux+大杂烩
出于项目需要,需要用到linux系统.这玩意儿平时很少用,要说体验度还是windows更人性化一些. 1.虚拟机的安装,这个没说的,百度VMware直接下最新版安装就好. 2.接着是linux系统的安 ...
- extension Array where Element 代码学习
var fieldNames: [String] { let p = UnsafePointer<Int32>(self.pointer) return Array(utf8Strings ...
- Match 基因匹配 题解(From luoguBlog)
N<=20000!N2的LCS要原地爆炸. 去您妈的优化考场上有分就行TLE60真香嘿嘿嘿 然而这显然是个板子只不过像我这样见识短浅的蒟蒻不知道罢了 正解: 某大佬的博客 转化为lis后二分 复 ...
- Java通过接口实现匿名类的实例
package com.chase.test; /** * 通过接口实现匿名类的实例 * * @author Chase * * @date 2013-10-18 下午04:28:17 * * @ve ...
- eas之如何获取当前用户
在UI扩展类中,获取当前用户可通过工具类SysContext如:SysContext.getSysContext().getCurrentUserInfo()在ControlerBean的扩展类中,获 ...