android使用Font Awesome字体图标

时间:2022年12月24日

/

来源:温油野兽

/

编辑:本站小编

收藏本文

下载本文

以下是小编帮大家整理的android使用Font Awesome字体图标,本文共7篇,供大家参考借鉴,希望可以帮助到您。本文原稿由网友“温油野兽”提供。

篇1:android使用Font Awesome字体图标

可以使用CSS所提供的所有特性对它们进行更改,包括:大小、颜色、阴影或者其它任何支持的效果,仅一个Font Awesome字库,就包含了与网页相关的所有形象图标。无论在任何尺寸下,可缩放的矢量图形都会为您呈现出完美的图标。Font Awesome的矢量图标,将使您的网站在视网膜级的高分屏上大放异彩。

那么,真强大的一个网页字体图标库可不可以用在安卓上呢,答案是可以的。

首先我们从文章前面的网址里下载最新的库,解压后再fonts目录下找到fontawesome-webfont.ttf,将其拷至我们的项目目录assets目录下,然后从github上下载一个字符串资源放到res目录下的values目录,

开始编码前看效果图

从效果图看出,我们没有用一张图片,就达到了这个效果,这一切都是依赖于字体,首先,创建自定义字体

Typeface font = Typeface.createFromAsset(getAssets, fontawesome-webfont.ttf);

然后是布局,简单布局了下

然后为每个TextView设置字体

private void initView() { Typeface font = Typeface.createFromAsset(getAssets(), fontawesome-webfont.ttf); tab1 = (TextView) findViewById(R.id.tab1); tab2 = (TextView) findViewById(R.id.tab2); tab3 = (TextView) findViewById(R.id.tab3); tab1.setTypeface(font); tab2.setTypeface(font); tab3.setTypeface(font); }

如果你想改变图标大小和颜色,只要修改字体的大小和颜色即可,也就是说只要修改TextView的textSize和textColor,

更多使用效果待你去发现。

篇2:android 使用LinearGradient进行字体渐变的效果

LinearGradient也称作线性渲染,LinearGradient的作用是实现某一区域内颜色的线性渐变效果

它有两个构造函数

public LinearGradient(float x0, float y0, float x1, float y1, int color0, int color1, Shader.TileMode tile)

其中,参数x0表示渐变的起始点x坐标;参数y0表示渐变的起始点y坐标;参数x1表示渐变的终点x坐标;参数y1表示渐变的终点y坐标 ;color0表示渐变开始颜色;color1表示渐变结束颜色;参数tile表示平铺方式,

Shader.TileMode有3种参数可供选择,分别为CLAMP、REPEAT和MIRROR:

CLAMP的作用是如果渲染器超出原始边界范围,则会复制边缘颜色对超出范围的区域进行着色

REPEAT的作用是在横向和纵向上以平铺的形式重复渲染位图

MIRROR的作用是在横向和纵向上以镜像的方式重复渲染位图

public LinearGradient (float x0, float y0, float x1, float y1, int[] colors, float[] positions, Shader.TileMode tile);

其中,参数x0表示渐变的起始点x坐标;参数y0表示渐变的起始点y坐标;参数x1表示渐变的终点x坐标;参数y1表示渐变的终点y坐标;参数colors表示渐变的颜色数组;参数positions用来指定颜色数组的相对位置;参数tile表示平铺方式。通常,参数positions设为null,表示颜色数组以斜坡线的形式均匀分布。

下面这段代码是直接从git上面的项目拷贝下来的

复制代码

package com.example.shimmer;

import android.content.Context;

import android.graphics.Canvas;

import android.graphics.LinearGradient;

import android.graphics.Matrix;

import android.graphics.Paint;

import android.graphics.Shader;

import android.util.AttributeSet;

import android.widget.TextView;

public class MyTextView extends TextView {

private LinearGradient mLinearGradient;

private Matrix mGradientMatrix;

private Paint mPaint;

private int mViewWidth = 0;

private int mTranslate = 0;

private boolean mAnimating = true;

public MyTextView(Context context, AttributeSet attrs) {

super(context, attrs);

}

@Override

protected void onSizeChanged(int w, int h, int oldw, int oldh) {

super.onSizeChanged(w, h, oldw, oldh);

if (mViewWidth == 0) {

mViewWidth = getMeasuredWidth();

if (mViewWidth >0) {

mPaint = getPaint();

mLinearGradient = new LinearGradient(-mViewWidth, 0, 0, 0,

new int[] { 0x33ffffff, 0xffffffff, 0x33ffffff },

new float[] { 0, 0.5f, 1 }, Shader.TileMode.CLAMP);

mPaint.setShader(mLinearGradient);

mGradientMatrix = new Matrix();

}

}

}

@Override

protected void onDraw(Canvas canvas) {

super.onDraw(canvas);

if (mAnimating && mGradientMatrix != null) {

mTranslate += mViewWidth / 10;

if (mTranslate >2 * mViewWidth) {

mTranslate = -mViewWidth;

}

mGradientMatrix.setTranslate(mTranslate, 0);

mLinearGradient.setLocalMatrix(mGradientMatrix);

postInvalidateDelayed(50);

}

}

}

复制代码

这段代码主要是分两步:一个是在onSizeChanged()即大小发生改变的时候,另外一个是onDraw()主要是用来做动画的效果的,

首先我们先来onSizeChanged()里面的代码,在这段代码中主要是定义了LinearGradient:

mLinearGradient = new LinearGradient(-mViewWidth, 0, 0, 0, new int[] { 0x33ffffff, 0xffffffff, 0x33ffffff },new float[] { 0, 0.5f, 1 }, Shader.TileMode.CLAMP);

这段代码可以这么理解,它定义了一组渐变的数值是{ 0x33ffffff, 0xffffffff, 0x33ffffff },这组数值分别在相对应的0,0.5,1中显示,0位置对应0x33ffffff颜色,0.5位置对应0xffffffff,1位置对应0x33ffffff,这个渐变的初始位置是在手机屏幕的外面x=(-mViewWidth,0)就是屏幕外面

最后来看一下这个onDraw()方法里面是如何做动画的

mTranslate += mViewWidth / 10;很简单表示每一次运动的递增值

if (mTranslate >2 * mViewWidth) {

mTranslate = -mViewWidth;

}

篇3:android sqlite 使用

Android操作系统使用SQLite数据库,使用有两种方法获得数据库对象:

1.获取已经存在的数据库

?

1

SQLiteDatabase dbbrndi=SQLiteDatabase.openDatabase(“/sdcard/zhycheng.db3”, null,SQLiteDatabase.OPEN_READONLY);

第一个String参数是数据库在文件系统中的位置,第二个参数一般为null,第三个参数控制数据库打开的方式,

这样就获得了数据库对象。

2.自己创建数据库

新建一个类,继承SQLiteOpenHelper,添加未实现的方法

代码如下

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

package your.zhycheng;

import android.content.Context;

import android.database.sqlite.SQLiteDatabase;

import android.database.sqlite.SQLiteDatabase.CursorFactory;

import android.database.sqlite.SQLiteOpenHelper;

public class MyHelper extends SQLiteOpenHelper{

public MyHelper(Context context, String name)

{

this(context,name,1);

}

public MyHelper(Context context, String name,int version)

{

this(context,name,null,version);

}

public MyHelper(Context context, String name,//数据库的名字

CursorFactory factory,

int version) {

super(context, name, factory, version);

}

@Override

public void onCreate(SQLiteDatabase db) {

db.execSQL(“create table user(id int,name text)”);

}

@Override

public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {

}

}

获得的数据库位于/data/data/yourpackage/databases/zhycheng.db3

然后通过生成一个MyHelper类的对象,调用

?

1

2

3

MyHelper mh=new MyHelper(this,“zhycheng”);

SQLiteDatabase db=mh.getReadableDatabase;

SQLiteDatabase db=mh.getWritableDatabase();

分别获得只读和可写的数据库,

获得数据库之后就可以进行数据库操作有以下两种方式操作数据库

1.执行SQL语句

?

1

2

3

db.rawQuery(sql,Args)

db.execSQL(sql, Args)

db.execSQL(sql)

上面的sql是String类型的数据库语言,Args是String数组。前面String中若有“?”则对应后面的值。

篇4:Android 字体设置Typeface讲解

常用的字体类型名称还有:

Typeface.DEFAULT //常规字体类型

Typeface.DEFAULT_BOLD //黑体字体类型

Typeface.MONOSPACE //等宽字体类型

Typeface.SANS_SERIF //sans serif字体类型

常用的字体风格名称还有:

Typeface.BOLD //粗体

Typeface.BOLD_ITALIC //粗斜体

Typeface.ITALIC //斜体

Typeface.NORMAL //常规

1.在xml中设置,

使用android:typeFace来设置:

Android:typeface=”sans”

2.在Java程序中:

eg1:

Typeface font = Typeface.create(Typeface.SANS_SERIF, Typeface.BOLD);

p.setTypeface( font );

eg2:

String familyName = “宋体”;

Typeface font = Typeface.create(familyName,Typeface.BOLD);

p.setTypeface(font);

篇5:Android 字体设置Typeface讲解

1.首先吧要使用的字体文件拷贝到assets下的fonts目录下,

2.代码如下:

private void mySetTypeFace { // TODO Auto-generated method stub //从assert中获取有资源,获得app的assert,采用getAserts(),通过给出在assert/下面的相对路径。在实际使用中,字体库可能存在于SD卡上,可以采用createFromFile()来替代createFromAsset。 Typeface face = Typeface.createFromAsset(getAssets(), “fonts/HanYi.ttf”); //title是之间定义的控件 title.setTypeface(face); }

篇6:Android中AsyncTask使用

一、AsyncTask的作用:

代替Thread+Handler的组合,使创建异步任务变得简单,

AsyncTask执行后台操作,并在用户界面上发布结果,而不必处理线程。

二、AsyncTask的定义:

public abstract class AsyncTask

extends Object

AsyncTask必须子类可以使用。子类将覆盖至少一个方法(doInBackground执行异步任务),通常会覆盖一次(onPostExecute显示结果,更新UI)

AsyncTask三种类型如下:

》Params,参数的类型发送到任务执行时。

》Progress,在后台计算过程中公布的进度单元类型。

》Result,计算结果的类型。

不是所有类型都是异步任务所使用的。要标记为未使用的类型,设置该类型Void:

三、AsyncTask的方法:

1、onPreExecute()

在任务开始后立即调用,在UI线程执行。这一步通常用于设置任务,例如在用户界面中初始化进度条。

2、doInBackground(Params...)

后台线程调用onPreExecute()完成后立即执行。这一步后台进程执行,可能会花费很长时间。

3、onProgressUpdate(Progress...)

调用publishProgress,在UI线程上执行,

这种方法是用来显示用户进度界面,后台进程仍在执行。例如,它可用于显示一个进度条或在文本中显示日志。

4、onPostExecute(Result)

后台进程处理完后,在UI线程上执行。后台进程的结果被传递到这一步作为参数。

常用的写法如下:

class MyTask extends AsyncTask{ @Override protected String doInBackground(String... params) { //执行异步任务 int n = 10; //调用publishProgress公布进度,最后onProgressUpdate方法将被执行 publishProgress(n); Thread.sleep(500);return null; } @Override protected void onPostExecute(String result) { //更新UI,显示结果 } @Override protected void onProgressUpdate(Integer... values) { //更新进度信息 }

new MyTask().execute();//执行任务

三、AsyncTask的规则:

1、任务实例必须在用户界面线程中创建。

2、execute(Params... params)方法必须在UI线程中调用。

3、不要手动调用onPreExecute,doInBackground,onProgressUpdate,onPostExecute这些方法

4、一个任务实例只能执行一次,如果执行第二次将会抛出异常

篇7:android shape使用总结

今天使用到shape,这个里面有很多属性,在这里我记录一下各个属性的使用的情况以及所代表的意思

复制代码

xmlns:android=“schemas.android.com/apk/res/android”

android:shape=[“rectangle” | “oval” | “line” | “ring”] >

android:radius=“integer”

android:topLeftRadius=“integer”

android:topRightRadius=“integer”

android:bottomLeftRadius=“integer”

android:bottomRightRadius=“integer” />

android:angle=“integer”

android:centerX=“integer”

android:centerY=“integer”

android:centerColor=“integer”

android:endColor=“color”

android:gradientRadius=“integer”

android:startColor=“color”

android:type=[“linear” | “radial” | “sweep”]

android:useLevel=[“true” | “false”] />

android:left=“integer”

android:top=“integer”

android:right=“integer”

android:bottom=“integer” />

android:width=“integer”

android:height=“integer” />

android:color=“color” />

android:width=“integer”

android:color=“color”

android:dashWidth=“integer”

android:dashGap=“integer” />

复制代码

上面这段就是shape使用的格式,来看一下如何使用:

定义这是一个GradientDrawable,必须作为根元素,

android:shape

定义shape的值,必须是下面的之一:

“rectangle”  矩阵,这也是默认的shape

“oval”  椭圆

“line”  一条水平的直线。这种shape必须使用 元素来定义这条线的宽度

“ring”  圆环

下面的属性只有当 android:shape=“ring”才使用:

android:innerRadius

尺寸。 内环的半径。一个尺寸值(dip等等)或者一个尺寸资源。

android:innerRadiusRatio

Float类型。这个值表示内部环的比例,例如,如果android:innerRadiusRatio = “ 5 ”,那么内部的半径等于环的宽度除以5。这个值会被android:innerRadius重写。 默认值是9。

android:thickness

尺寸。环的厚度,是一个尺寸值或尺寸的资源。

android:thicknessRatio

Float类型。厚度的比例。例如,如果android:thicknessRatio= “ 2 ”,然后厚度等于环的宽度除以2。这个值是被android:innerRadius重写, 默认值是3。

android:useLevel

Boolean类型。如果用在 LevelListDrawable里,那么就是true。如果通常不出现则为false。

为Shape创建一个圆角,只有shape是rectangle时候才使用。

android:radius

Dimension。圆角的半径。会被下面每个特定的圆角属性重写。

android:topLeftRadius

Dimension。top-left 设置左上角的半径

android:topRightRadius

Dimension。top-right 设置右上角的半径

android:bottomLeftRadius

Dimension。 设置右下角的半径

android:bottomRightRadius

Dimension。设置左下角的半径

指定这个shape的渐变颜色。

android:angle

Integer。渐变的角度。 0 代表从 left 到 right。90 代表bottom到 top。必须是45的倍数,默认为0

android:centerX

Float。渐变中心的相对X坐标,在0到1.0之间。

android:centerY

Float。渐变中心的相对Y坐标,在0到1.0之间。

android:centerColor

Color。可选的颜色值。基于startColor和endColor之间。

android:endColor

Color。 结束的颜色。

android:gradientRadius

Float 。渐变的半径。只有在 android:type=“radial”才使用

android:startColor

Color。开始的颜色值。

android:type

Keyword。渐变的模式,下面值之一:

“linear”  线形渐变,

这也是默认的模式

“radial”  辐射渐变。startColor即辐射中心的颜色

“sweep”  扫描线渐变。

android:useLevel

Boolean。如果在LevelListDrawable中使用,则为true

内容与视图边界的距离

android:left

Dimension。左边填充距离.

android:top

Dimension。顶部填充距离.

android:right

Dimension。右边填充距离.

android:bottom

Dimension。底部填充距离.

这个shape的大小。

android:height

Dimension。这个shape的高度。

android:width

Dimension。这个shape的宽度。

注意:默认情况下,这个shape会缩放到与他所在容器大小成正比。当你在一个ImageView中使用这个shape,你可以使用 android:scaleType=“center”来限制这种缩放。

填充这个shape的纯色

android:color

Color。颜色值,十六进制数,或者一个Color资源

这个shape使用的笔画,当android:shape=“line”的时候,必须设置改元素。

android:width

Dimension。笔画的粗细。

android:color

Color。笔画的颜色

android:dashGap

Dimension。每画一条线就间隔多少。只有当android:dashWidth也设置了才有效。

android:dashWidth

Dimension。每画一条线的长度。只有当 android:dashGap也设置了才有效。

android:dashGap和android:dashWidth设置这条线为虚线的,其中android:dashWidth表示'-'这样一个横线的宽度,android:dashGap表示之间隔开的距离,

使用别人的一段代码:

button_bg.xml

复制代码

android:width=“2dp”

android:color=“#fad3cf” />

android:bottomLeftRadius=“5dp”

android:bottomRightRadius=“5dp”

android:topLeftRadius=“5dp”

android:topRightRadius=“5dp” />

android:bottom=“10dp”

android:left=“10dp”

android:right=“10dp”

android:top=“10dp” />

复制代码

button_pressed_bg.xml的内容如下:

复制代码

android:endColor=“#FFFFFF”

android:gradientRadius=“50”

android:startColor=“#ff8c00”

android:type=“radial” />

android:dashGap=“3dp”

android:dashWidth=“5dp”

android:width=“2dp”

android:color=“#dcdcdc” />

android:bottom=“10dp”

android:left=“10dp”

android:right=“10dp”

android:top=“10dp” />

复制代码

如何使用,看下面的代码:

复制代码

复制代码

管理你的Android电池使用

android学习方法

奥运英语?奥运图标

android 的就业前景

android读取xml

下载android使用Font Awesome字体图标(通用7篇)
android使用Font Awesome字体图标.doc
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档
点击下载本文文档