开发者社区> 楚广明> 正文

【Based Android】让你的android应用使用可爱的iphone备忘录字体

简介: 用过iphone的朋友一定会很记得ios系统自带的备忘录,里面的字体非常的可爱,所以大家有没有想过把这个字体弄到你的android设备中呢?                    其实android提供了非常方便的字体导入了方法了,这里不得不提到一个几乎快被大家遗忘了的一个文件夹assets.
+关注继续查看

用过iphone的朋友一定会很记得ios系统自带的备忘录,里面的字体非常的可爱,所以大家有没有想过把这个字体弄到你的android设备中呢?

    

        

 

   其实android提供了非常方便的字体导入了方法了,这里不得不提到一个几乎快被大家遗忘了的一个文件夹assets.其实assets文件夹是用来放置程序要使用的资源的,和res下面的raw文件夹基本作用相同,起主要的区别有下面几点:

  •   在创建android project的时候assets会自动生成,raw文件夹需要带res下面手动创建
  •   assets下面的资源不会被编译成二进制文件,所以也不会生成id,所以只能用路径去引用;raw里面的文件也不会被编译成二进制但是可以用R.id引用。
  •   assets支持多级目录,而raw则不可以
 

   今天我们所需要的字体,就放在assets文件夹下面fonts子目录中:

    

   

    关于大家如何取得系统的字体,推荐一个小软件ifunbox,还需要一个破解的ios设备,安装好itunes,就是如下的界面

  就像windows的资源管理器一样,你可以搜索iphone的很多内置资源了,包括iphone备忘录的背景图,这次demo的例子中的字体,我并不是从这里面找的,是以前从网上下载的,有需要的可以联系我~分享一下。

 

  言归正传,如何使用这个字体,其实更确切的说是如何使用assets文件夹下面的资源。

  android提供了一个关键的类 AssetManager,和很多manager类一样,他就是提供读取assets文件的类。通过Context的方法getAssets就可以返回一个AssetMnaager对象。

  下面就是如何使用字体的代码:

  

 1     @Override
2 public void onCreate(Bundle savedInstanceState) {
3 super.onCreate(savedInstanceState);
4 setContentView(R.layout.main); //载入布局
5 Typeface myTypeface = Typeface.createFromAsset(getAssets(),"fonts/iosnote.ttf");
6 //实例化一个字体对象
7
8 TextView iostv = (TextView)findViewById(R.id.iosTextView);
9 iostv.setTypeface(myTypeface);
10 //载入ios中的字体
11
12 Log.i("YUI", this.getClass()+"is created!");
13 }

 

  

    在布局文件中,还是沿用上一篇博文中的例子吧,添加了一个新的TextView用来加载新的字体,而下面的TextView则用android默认的字体。

 1 <?xml version="1.0" encoding="utf-8"?>
2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
3 android:layout_width="fill_parent"
4 android:layout_height="fill_parent"
5 android:orientation="vertical" >
6
7 <TextView
8 android:id="@+id/iosTextView"
9 android:layout_width="fill_parent"
10 android:layout_height="wrap_content"
11 android:text="@string/ios"
12 android:textSize="24sp"
13 android:textStyle="bold"/>
14
15 <EditText
16 android:id="@+id/myText"
17 android:layout_width="fill_parent"
18 android:layout_height="@dimen/basic_button"
19 />
20
21 <TextView
22 android:id="@+id/defaultTextView"
23 android:layout_width="fill_parent"
24 android:layout_height="wrap_content"
25 android:text="@string/android"
26 android:textSize="24sp"
27 android:textStyle="bold"/>
28
29 </LinearLayout>

  好了现在就可看一看效果了。。。不过这个例子只是演示一下字体罢了,没有任何美学价值。。。。实用价值。。。

   

   上面的就是iphone备忘录的字体了~

    其实我一直想做一个和iphone一样的android备忘录,但是觉得精力有限了~吃完饭写文章到现在,但愿我和大家都有收获~

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
iOS6和iPhone5使用第三方静态库在真机无法运行的处理
环境: xcode5.1 ios7 在模拟器下正常运行的程序,在真机上出现下面的错误: ld: file is universal (3 slices) but does not contain a(n) armv7s slice: /Users/david/Downloads/QR code/QR code/ZBarSDK/libzbar.a for architecture armv7s 上面的提示是使用的libzbar这个库不支持armv7s。
790 0
【Based Android】让你的android应用使用可爱的iphone备忘录字体
用过iphone的朋友一定会很记得ios系统自带的备忘录,里面的字体非常的可爱,所以大家有没有想过把这个字体弄到你的android设备中呢?                    其实android提供了非常方便的字体导入了方法了,这里不得不提到一个几乎快被大家遗忘了的一个文件夹assets.
629 0
备忘:mybatis 3的使用记录
  这是一篇记录。mybatis是一个部分模仿ORM的framework。是一个介于ORM和原始JDBC的框架。既可以提供ORM的操作对象的特性,又能从详细地控制最终的SQL。达到一个平衡。我们还是得写sql,同时mybatis负责类到数据库记录的映射。
1151 0
【POI xlsx】使用POI对xlsx的单元格样式进行设置 / 使用POI对xlsx的字体进行设置
涉及到的样式都在代码中有说明: 1 package com.it.poiTest; 2 3 import java.io.FileNotFoundException; 4 import java.
1848 0
+关注
楚广明
10年导入咨询顾问经验,敏捷中国 第一届中国高峰会讲员,行业实施:中国移动、中华联合保险、中国民航信息 ANZ 澳新银行、戴姆勒奔驰汽车、广州证券、浦发银行、爱德万测试、蔚来汽车、清华大学、努比亚、顺丰速运、迅雷、时趣互动......等企业 Atlassian 敏捷项目
508
文章
1
问答
文章排行榜
最热
最新
相关电子书
更多
JS零基础入门教程(上册)
立即下载
性能优化方法论
立即下载
手把手学习日志服务SLS,云启实验室实战指南
立即下载