技术标签: Android
目录
tipTextView.setTypeface(Typeface.defaultFromStyle(Typeface.BOLD));//加粗
tipTextView.setTypeface(Typeface.defaultFromStyle(Typeface.NORMAL));//常规
leftTextView.setTextColor(context.getResources().getColor(R.color.black_191919));
rightView.setVisibility(View.VISIBLE);
(以下写法leftMargin必须在ConstraintLayout中,如果在其他布局中不能这么写)
DpAndPx是一个dp和px转换的工具类,网上有很多
kotlin写法:
button.setOnClickListener {
val layoutParams = it.layoutParams as ConstraintLayout.LayoutParams
layoutParams.width = DpAndPx.Dp2Px(188f)
layoutParams.leftMargin = DpAndPx.Dp2Px(100f)
it.layoutParams = layoutParams
}
java写法:
ConstraintLayout.LayoutParams layoutParams = (ConstraintLayout.LayoutParams) button.getLayoutParams();
layoutParams.width = DpAndPx.Dp2Px(188f);
layoutParams.leftMargin = DpAndPx.Dp2Px(100f);
button.setLayoutParams(layoutParams);
原先是
运行后
1.第一种是背景已经写好的
button.setBackgroundResource(R.mipmap.header);
button.setBackgroundResource(R.drawable.back_point_blue);
2.第二种是背景没有写好,但是有好几个控件背景类型都一样,只是颜色不同而已(右下角的图片是一个单独的控件,不是背景),
如下图:
这时候如果写6个背景就有点浪费,就可以在代码中自己造背景
下面是一个例子
要想设置背景,首先必须要有一个原先存在的背景,也就是background必须有,这样才能获取到
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".activity.Test2Activity">
<Button
android:id="@+id/button4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button"
android:background="@drawable/back_point_blue"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
原来是这样的
动态设置
public class Test2Activity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_test2);
Button button = findViewById(R.id.button4);
GradientDrawable background = (GradientDrawable) button.getBackground();//先获取原先背景
background.setColor(Color.parseColor("#5ac3be"));//设置背景颜色,设置颜色的第一种方式
background.setStroke(10,getResources().getColor(R.color.colorBlue));//设置外部边框,设置颜色的第二种方式
background.setCornerRadius(10);//设置圆角
background.setAlpha(80);//设置透明度
background.setShape(GradientDrawable.RECTANGLE);//设置形状,当前为矩形,也可以设置为OVAL椭圆形
}
}
运行结果
1.在xml中改变 使用tint
<ImageView
android:id="@+id/imageView"
android:layout_width="@dimen/dp_55"
android:layout_height="@dimen/dp_55"
android:src="@drawable/back_black_icon"
android:tint="@color/colorPrimary"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/button4" />
2.在代码中修改颜色
ImageView imageView = findViewById(R.id.imageView);
Drawable drawable = ContextCompat.getDrawable(this, R.drawable.back_black_icon);
if (drawable != null) {
DrawableCompat.setTint(drawable,ContextCompat.getColor(this,R.color.colorBlue));
imageView.setImageDrawable(drawable);
}
imageView.setOnClickListener((view)->{
DrawableCompat.setTint(drawable,ContextCompat.getColor(this,R.color.colorCyan));
imageView.setImageDrawable(drawable);
});
点击之后
阿里云建站Discuz_X3.4 这里当然可以选宝塔系统或者专门的Discuz3.2系统,截至笔者写这篇文章看到的最新系统。我其实主要想学习下怎么搭建环境,按照官网的步骤来,所以单独选了ubuntu 14.04 32的操作系统。教程主要参考: Discuz官网搭建教程 首先我们需要先弄明白我们需要什么软件,分别是做什么用的1、Apache 版本是httpd-2.2.34.tar 下载地址为 http://_服务器架discuz x3.4 ip
信号的本质是函数,因此信号处理方法具有普适性,应用领域非常广泛。本篇介绍信号的基本概念以及一些典型的信号,主要参考奥本海姆的经典教材《信号与系统》,微信搜索公众号PurePlay,后台回复Oppenheim即可获取中文PDF。目录1. 信号的定义2. 能量和功率3. 信号的基本变换4. 信号的性质 4.1 周期性 4.2 奇偶性5. 复指数信号及其周期性 5.1 连续时..._新代系统信号定义图
在上一章讲到了OpenCV的安装问题:仅仅安装了OpenCV想学习人脸识别的时候就会出现些错误,在这里简单介绍一下:使用最新版的OpenCV进行人脸识别会发现没有face.hpp这个文件,而有一些网上的讲解视频当使用==#include<opencv2/face.hpp>==时,我们却没有,因为最近实现人脸识别,由于采用的是opencv3,而opencv3的人脸识别库等contrib模块已经不再内置了。这也正是人脸识别等contrib模块没有放到主仓库的原因:不稳定,仍在开发中。快速解_namespace cv 没有成员face
目前我们已经会使用Lock去对公共资源进行互斥访问了,也探讨了同一线程可以使用RLock去重入锁,但是尽管如此我们只不过才处理了一些程序中简单的同步现象,我们甚至还不能很合理的去解决使用Lock锁带来的死锁问题。所以我们得学会使用更深层的解决同步问题。 Python提供的Condition对象提供了对复杂线程同步问题的支持。Condition被称为条件变量,除了提供与Lock
标签之美——网页表格的使用通过表格,可以使网页排版更加清晰,形式更加简洁漂亮。一、表格布局中三个重要的标签1、:表格的开始和结束标签,行列的布局都在标签内。2、行标签的开始和结束3、列标签的开始和结束行标签在列标签的外层,不能单独使用,其中必须至少有一列。示例如下:表格的内容效果如下: 二、单元格设置的相关标签1、单元格表头这个标签用来设置表格的表头,作用和列标签相似,只是字体是加黑的。12 2、..._html表格左对齐
在标签中valign="middle"与align="center"不相同。valign 调格子中内容的垂向(上下)位置,valign=“top“上面, valign=“middle“中间,或 valign=“bottom 下面。align 调格子中内容的(左右)横向位置,align="LEFT“ 左边对齐, align="CENTER“中间 或 align="RIGHT“右_valign=middle
那年,我们一起演的年会节目 一年又要结束了,如果没有世界末日的话,依旧是要照常度过的…… 周三,该我分享了,准备些什么呢?突然想起来今年的年会已经确定了日期,组委会已经给全员发了通知邮件,说不好那一天就又突然通知“开始筹备”了。干脆我来个动员性质的话题吧,顺便把去年的年会节目放一下,这样不就一举多得了? 下面是ppt中的截图。 记得..._年会技术部人员排练节目
题目描述及遍历二叉树的构建和遍历题解本题是IO型OJ题,需要自己设计函数。从需求上看,要构建二叉树,所以要先写二叉树结构定义;构建二叉树的功能可以写成一个函数;中序遍历再写成一个函数;在main函数接收数据。思路:输入字符串的顺序是前序遍历的结果,那么构建二叉树的过程就是二叉树前序遍历的逆过程。把题目给的例子写成二叉树就是如下形式二叉树结构struct TreeNode{ struct TreeNode* left; struct TreeNode* right_牛客 数组构造二叉树
关注“心仪脑”查看更多脑科学知识的分享。关键词:文献综述、科普散文相信很多朋友在初学使用fsl进行sMRI/fMRI数据分析的时候都有一些不熟悉,这里我整理了一些使用fsl进行数据处理的经验,本篇是有关使用fsl中的feat工具进行fMRI数据预处理的部分,后续文章还会继续跟进一级,二级分析与静息态功能性连接以及与PET结合的多种高级数据处理技巧等。工具介绍:FEAT工具多用于对task/res-fMRI数据进行预处理和统计分析(1st、2st),基于实验设计的复杂性与否可以自行选择自己_fsl中设计矩阵中的行数与输入数据中的 "时间点 "数不匹配
分类评估: 混淆矩阵、ROC、AUC、提升图和KS图回归评估:非监督模型评估:关联评估:_数据挖掘模型监控指标在前端的名字
E1系统和T1系统都是WAN专线的一种接入线路标准,都属于PDH(Plesiochronous Digital Hierarchy,准同步数字体系)体系。T1支持1.544Mbit/s专线电话数据传输,由24条独立通道组成;E1支持2.048Mbit/s速率,由30路数据信道和两个信令控制信道组成,共32路。CE1/PRI(Channelized E1/Primary Rate Interface,通道化E1/基群速率接口)是E1系统的一种物理接口。CE1/PRI接口可以工作在E1方式(非通道化方式)和_pri接口
可以直接在我下面给的链接下载插件(下载到桌面就行)然后在jenkins中点击插件管理–》点击Advenced–》点击Upload Plugin–》选择你下载好的插件,完全可以解决你FileNotFoundException的办法下载插件链接:http://updates.jenkins-ci.org/download/plugins/...