TextView系列:TextView的高亮和置灰状态
Posted zhangjin1120
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了TextView系列:TextView的高亮和置灰状态相关的知识,希望对你有一定的参考价值。
- 看设计稿,TextView的高亮和置灰是不常见的。
- 核心代码:
if (enable) {
tv.setEnabled(true);
tv.setTextColor(Color.parseColor("#06BF5F"));
} else {
tv.setEnabled(false);
tv.setTextColor(Color.parseColor("#999999"));
}
- 效果图:
置灰 | 高亮 |
---|---|
- 测试代码:
public class MainActivity extends AppCompatActivity {
TextView tv;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tv = findViewById(R.id.tv);
tv.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(MainActivity.this,"成功",Toast.LENGTH_SHORT).show();
}
});
changeState(null);
}
boolean enable = false;
public void changeState(View view) {
if (enable) {
tv.setEnabled(true);
tv.setTextColor(Color.parseColor("#06BF5F"));
} else {
tv.setEnabled(false);
tv.setTextColor(Color.parseColor("#999999"));
}
enable = !enable;
}
}
- 关于
enable
和clickable
的区别:
enable不仅不能点击,而且在显示效果上,用户可以明显看出来禁用效果。
clickable仅仅是不能点击,所以enable是包含clickable的。
这里用enable更加恰当。
以上是关于TextView系列:TextView的高亮和置灰状态的主要内容,如果未能解决你的问题,请参考以下文章