锁屏界面

来源:互联网 发布:无线淘宝logo尺寸 编辑:程序博客网 时间:2024/06/05 08:54
 锁屏的代码在
/frameworks/polices/bases/phone/com/android/internal/policy/impl/LockScreen.java
可以设置锁屏功能开关的代码位于:
frameworks/policies/base/phone/com/android/internal/policy/impl/LockPatternKeyguardView
/738


packages\apps\Settings\AndroidManifest.xml中的<!--action android:name="android.intent.action.CLOSE_SYSTEM_DIALOGS" / -->注释掉

Strings.xml
Drawables folder
/anim/fade_in1.xml
/anim/fade_out1.xml
/anim/fade_in1_delay.xml
/layout/keyguard_screen_lock.xml
framework/policies/base/phone/com/android/internal/policy/impl/Lockscreen.java
framework/policies/base/phone/com/android/internal/policy/impl/KeyguardUpdateMonitor.java
framework/policies/base/phone/com/android/internal/policy/impl/KeyguardViewMediator.java

时钟字体:
涉及文件:/frameworks/base/core/java/com/android/internal/widget/DigitalClock.java
/frameworks/base/core/res/res/layout/
keyguard_screen_lock.xml:
可以修改:屏幕左边可能出现的information的布局,包括图片
keyguard_screen_tab_unlock_land.xml:
可以修改:服务,时钟, ampm,字体大小,类型
keyguard_screen_unlock_landscape:
可以修改:说明,紧急电话,忘记模式按钮
xml
TextView有一个属性是设置字体的,有四种
android:typeface="normal"
android:typeface="sans"
android:typeface="serif"
android:typeface="monospace"
android:textStyle=""加粗/斜体等,
/external/freetype/该文件夹中包含全部字体相关文件
java代码中:

Typeface face=Typeface.createFromAsset(getAssets(),   "XXX.ttf");
//xxx.ttf放入assets目录下
textview.setTypeface(face);
其他

下面是Android默认字体和自定义字体的绘制效果:
源代码如下:
Java代码 :

package com.yarin.android.Typefaces;  
 
import android.app.Activity;  
import android.content.Context;  
import android.graphics.Canvas;  
import android.graphics.Color;  
import android.graphics.Paint;  
import android.graphics.Typeface;  
import android.os.Bundle;  
import android.view.View;  
 
public class Typefaces extends Activity  
{  
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState)  
    {  
        super.onCreate(savedInstanceState);  
          
        setContentView(new SampleView(this));  
    }  
      
    private static class SampleView extends View   
    {  
        private Paint    mPaint = new Paint(Paint.ANTI_ALIAS_FLAG);  
        private Typeface mFace;  
          
        public SampleView(Context context)   
        {  
            super(context);  
            //实例化自定义字体  
            mFace = Typeface.createFromAsset(getContext().getAssets(),"fonts/samplefont.ttf");  
            //设置字体大小  
            mPaint.setTextSize(32);  
        }  
          
        @Override protected void onDraw(Canvas canvas)   
        {  
            canvas.drawColor(Color.WHITE);  
            //绘制默认字体  
            mPaint.setTypeface(null);  
            canvas.drawText("Default:abcdefg", 10, 100, mPaint);  
            //绘制自定义字体  
            mPaint.setTypeface(mFace);  
            canvas.drawText("Custom:abcdefg", 10, 200, mPaint);  
        }  
    }  

好了,就这么简单就实现了自定义字体。

下面是两个非常有用的方法,在这里备份一下:   

Java代码 :

  1. //消除锯齿   
  2. paint.setFlags(Paint.ANTI_ALIAS_FLAG)   
  3. //取得字符串宽度   
  4. paint.measureText()
原创粉丝点击