`
qinxch
  • 浏览: 11117 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

android 自定义字体

阅读更多
  在android系统中,自带的只有三种字体---"sans","serif"和"monospace",你只要在xml文件中的
android:typeface
属性使用它们:
<TableLayout
	xmlns:android="http://schemas.android.com/apk/res/android"
	android:layout_width="fill_parent"
	android:layout_height="fill_parent"
	android:stretchColumns="1">
	<TableRow>
		<TextView
			android:text="sans:"
			android:layout_marginRight="4px"
			android:textSize="20sp"
		/>
		<TextView
			android:id="@+id/sans"
			android:text="Hello, world!"
			android:typeface="sans"
			android:textSize="20sp"
		/>
	</TableRow>
	<TableRow>
		<TextView
			android:text="serif:"
			android:layout_marginRight="4px"
			android:textSize="20sp"
		/>
		<TextView
			android:id="@+id/serif"
			android:text="Hello, world!"
			android:typeface="serif"
			android:textSize="20sp"
		/>
	</TableRow>
	<TableRow>
		<TextView
			android:text="monospace:"
			android:layout_marginRight="4px"
			android:textSize="20sp"
		/>
		<TextView
			android:id="@+id/monospace"
			android:text="Hello, world!"
			android:typeface="monospace"
			android:textSize="20sp"
		/>
	</TableRow>
	<TableRow>
		<TextView
			android:text="Custom:"
			android:layout_marginRight="4px"
			android:textSize="20sp"
		/>
		<TextView
			android:id="@+id/custom"
			android:text="Hello, world!"
			android:textSize="20sp"
		/>
	</TableRow>
</TableLayout>

    有时候,系统自带的字体并不能满足我们特殊的需求,这时候就需要引用其他的字体了,可以把下载的字体文件放在assets目录下.自定义字体文件不能使用xml代码读取而应该使用java代码:
public class Test extends Activity {
	@Override
	public void onCreate(Bundle icicle) {
		super.onCreate(icicle);
		setContentView(R.layout.main);
		
		TextView tv=(TextView)findViewById(R.id.custom);
		Typeface face=Typeface.createFromAsset(getAssets(),
																						"fonts/HandmadeTypewriter.ttf");//也可以使用其他的静态方法获取
		
		tv.setTypeface(face);
	}
}

这个ttf文件在http://moorstation.org/typoasis/designers/klein07/text01/handmade.htm
    注意:如果你下载的字体Android不支持,那么系统会使用默认字体"sans"。由于应用自定义字体需要额外空间,所以一般不是都需要自定义字体的.
分享到:
评论
5 楼 imcaptor 2010-11-15  
如果字体过大,需要时间特别长?
如何优化字体?
4 楼 qinxch 2010-11-10  
不需要破解吧 就随便的一张图
3 楼 vivid_gxp 2010-11-10  
楼主的头像已破解,如下:
收件人:Xiaocheng Qin
@Chengdu,China
主题:
内容:
2 楼 lovext 2010-11-10  
text的字体设置应该而且只能在TextView里面设置,是合情合理的。
1 楼 ouyangshixiong 2010-11-02  
支持楼主这样喜欢研究的同学。要是能配置xml就更完美了。这样写就只能在单个view里面用了。

相关推荐

Global site tag (gtag.js) - Google Analytics