一手遮天 Android - UI: 颜色和不透明度
示例如下:
/ui/ColorDemo1.java
/**
* 颜色和不透明度
*/
package com.webabcd.androiddemo.ui;
import android.graphics.Color;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.TextView;
import com.webabcd.androiddemo.R;
public class ColorDemo1 extends AppCompatActivity {
private TextView mTextView3;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_ui_colordemo1);
mTextView3 = findViewById(R.id.textView3);
sample();
}
private void sample() {
// Color.argb() - 通过指定 argb 的方式创建颜色对象
mTextView3.setTextColor(Color.argb(0xff, 0xff, 0x00, 0x00));
// 从资源文件中获取颜色值
mTextView3.setBackgroundColor(getResources().getColor(R.color.blue));
}
}
/layout/activity_ui_colordemo1.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<!--
alpha - 不透明度(在 java 中通过 setAlpha() 设置)
颜色格式类似如下:
#RGB。如:#FF0000, #00FF00, #0000FF
#ARGB(A 为 Alpha 值)。如:#FFFF0000, #FF00FF00, #FF0000FF
-->
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="你好 webabcd"
android:textColor="#FFFF0000"
android:background="#0000FF"
android:alpha="0.7"/>
<!--
颜色格式类似如下(简化方式):
#RGB。如:#F00
#ARGB(A 为 Alpha 值)。如:#FF00, #F0F0, #F00F
-->
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="你好 webabcd"
android:textColor="#FF00"
android:background="#00F"/>
<!--在 java 中设置颜色-->
<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="你好 webabcd"/>
</LinearLayout>