Android 為文字添加發亮的效果(LED時鐘為例)
阿新 • • 發佈:2019-02-17
首先我們要找到字型,字型下載連結在文章最下方
解壓之後選一個字型ttf檔案,將字型檔案存放在如圖所示的位置
建立繼承自TextView的LedTextView類(目的:設定字型)
public class LedTextView extends TextView {
public LedTextView(Context context, AttributeSet attrs) {
super(context, attrs);
AssetManager assets = context.getAssets();
這裡我們用兩個TextView重合來實現88:88:88的陰影,兩個TextView完全重疊,一個顯示陰影,一個顯示時間<span style="white-space:pre"> </span>//如下程式碼所示方式引用字型程式碼檔案 final Typeface font = Typeface.createFromAsset(assets, "font/digital-7.ttf"); setTypeface(font); } }
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.example.darren.androidtest.MainActivity" tools:showIn="@layout/activity_main"> /> <!-- 用於顯示陰影--> <view.LedTextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true" android:text="88:88:88" android:textColor="#3300FF00" android:textSize="80sp" /> <!-- 用於顯示時間--> <view.LedTextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true" android:shadowColor="#00FF00" android:shadowDx="0" android:shadowDy="0" android:shadowRadius="10" android:text="09: 15:30" android:textColor="#00FF00" android:textSize="80sp" /> </RelativeLayout>
這樣就基本實現了
參考資料:《打造高質量的Android應用》
字型下載連結:http://www.styleseven.com/data/font_digital-7.zip