视频:善知堂Android http://www.verycd.com/topics/2915940/
第七集 抗锯齿和全屏
1.画笔抗锯齿
paint.setAntiAlias(true);//抗锯齿
一句话就可以抗锯齿
2.另一种抗锯齿
canvas.setDrawFilter(new PaintFlagsDrawFilter(0, Paint.ANTI_ALIAS_FLAG | Paint.FILTER_BITMAP_FLAG));
前面的是画笔的抗锯齿,后面的是位图。
3.全屏
主activity 的高度和宽度是全配的高度和宽度,而扩展的view则去掉上面的面积
获得主activity的高度和宽度
public GameView(Context context) { super(context); Activity a = (Activity) context; System.out.println(a.getWindowManager().getDefaultDisplay() .getWidth()); System.out.println(a.getWindowManager().getDefaultDisplay() .getHeight()); new MyThread().start(); }
通过程序 或者 配置文件可以实现全配
3.1 通过配置文件,修改 AndroidManifest.xml
<application android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" > 加入这一行 <activity android:name=".RestartActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application>
这个是android的主题配置,就和windos各种主题一样。
另外,可以将这句代码写到下面的activity里面,则只对activity有效。
@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); LinearLayout lay = new LinearLayout(this); //设置没有标题,还有状态栏 requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(lay); }
在上面的基础上再加入一句全屏的功能
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
第五天早上完