1。全屏顯示,取消標題欄和狀態欄
requestWindowFeature(Window.FEATURE_NO_TITLE); //取消標題 getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); //取消狀態欄?
?
2.圖片由淺到深顯示。使用濾鏡
AlphaAnimation alp = new AlphaAnimation(0.1f,1.0f); //透明度由0.1到1.0漸變 alp.setDuration(3*1000); //全部顯示過程3秒鐘 ImageView image = new ImageView(this); image.startAnimation(alp); //啟動指定的繪制 alp.setAnimationListener(new AnimationListener() { @Override public void onAnimationStart(Animation animation) {} @Override public void onAnimationRepeat(Animation animation) {} @Override public void onAnimationEnd(Animation animation) { //當顯示完成之后才做某事 } });
?
?
3。檢測手機網絡是否暢通
public static boolean checkNet(Context context){ /*根據系統服務獲取手機連接管理對象*/ ConnectivityManager connectivity = (ConnectivityManager)context. getSystemService(Context.CONNECTIVITY_SERVICE); if(connectivity!=null){ NetworkInfo info = connectivity.getActiveNetworkInfo(); if(info!=null && info.isConnected()){ //判斷當前網絡是否連接 if(info.getState()==NetworkInfo.State.CONNECTED){ return true; } } } return false; } 如果網絡不通,可使用下面的服務進入手機的網絡配置 startActivity(new Intent(android.provider.Settings.ACTION_WIRELESS_SETTINGS));
?
?
4.關于提示alert
?(1) .使用toast
?
Toast tst =Toast.makeText(this,"text",Toast.LENGTH_SHORT); tst.show();
?(2) 。使用一個alert dialog box
?
AlertDialog dialog = new AlertDialog.Builder(this).create(); dialog.setTitle("標題部分"); dialog.setMessage("提示消息"); dialog.setButton(DialogInterface.BUTTON_POSITIVE,"button value", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { //某操作 } }); dialog.setButton(DialogInterface.BUTTON_NEGATIVE,"button value", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { //某操作 } }); dialog.setButton(DialogInterface.BUTTON_NEUTRAL,"button value", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { //某操作 } });
? 這里完善一下alertdialog,由于內容很多這里只貼一下圖加點簡單介紹。
①list dialog即一個dialog中含有一個列表
②一個含有進度條的dialog
③dialog中含有單選列表?? 相當于radio組
④dialog中多選按鈕列表,相當于checkBox組
⑤自定義dialog中的布局,圖中登錄框為自定義的視圖
順便說一句。dialog列表中的數據還可以沖數據庫中讀取,因為builder中有方法
?setMultiChoiceItems(Cursor cursor, String isCheckedColumn, String labelColumn,.....可以傳遞一個cursor
?
?
?
(3).使用Notification in Status Bar.關鍵代碼如下
?? 第一種方法普遍的Notification:
?
//第一步:創建notification管理類NotificationManager String ns = Context.NOTIFICATION_SERVICE; NotificationManager manager = (NotificationManager)this.getSystemService(ns); //二,創建notification實例,參數1為顯示的圖片,2為提示文字,3是什么時候執行 Notification notification = new Notification(R.drawable.dback, "下載完成", System.currentTimeMillis()); //定義notification的額外信息和intent Intent intent = new Intent(this,StatusBarActivity.class); PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT); notification.setLatestEventInfo(this, "下載", "下載完成", pendingIntent); //傳入notification到NotificationManager中 manager.notify(notiId, notification);
?
?? 第二種方法。定制自己的notification提示信息
?
//自己使用布局定制一個提示信息 String ns = Context.NOTIFICATION_SERVICE; NotificationManager manager = (NotificationManager)this.getSystemService(ns); Notification notification = new Notification(R.drawable.dback, "自制提示信息", System.currentTimeMillis()); RemoteViews contentView = new RemoteViews(getPackageName(), R.layout.custom_notification_layout); //指定自己的提示ui布局文件 contentView.setImageViewResource(R.id.image, R.drawable.notification_image); contentView.setTextViewText(R.id.text, "Hello, this message is in a custom expanded view"); notification.contentView = contentView; Intent notificationIntent = new Intent(this, StatusBarActivity.class); PendingIntent contentIntent = PendingIntent.getActivity(this, 0, notificationIntent, 0); notification.contentIntent = contentIntent; manager.notify(notiId, notification);
?
5.解決android軟鍵盤擋住控件方法:
getWindow().setSoftInputMode(modes); /*moeds有三個值:默認WindowManager.LayoutParams.SOFT_INPUT_ADJUST_UNSPECIFIED WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN modes為第二個或第三個可以解決問題 */
?
6.使用wake locks
?開啟你的手機應用,當你一定時間不與你的手機交互時,手機屏幕將會暗淡下去。使用wake locks 會使手機屏幕一直處于激活狀態。
使用方式:首先在manifestw文件中配置 user-perssion? 值為android.permission.WAKE_LOCK。
然后:PowerManager powerManager = (PowerManager)context.getSystemService(Context.POWER_SERVICE); WakeLock wakeLock = powerManager.newWakeLock(PowerManager.FULL_WAKE_LOCK, "My Lock");?
?
開啟wake locks使用方法:wakeLock.acquire();
當你的應用暫停或者退出時釋放:wakeLock.release();
一般我們在activity中的onCreate方法中創建wakeLock對象
在onResume方法中調用WakeLock.acquire()
在onPause方法中調用wakeLock.release();
?
7.關于drawBitmap(Bitmap bitmap, Rect src, Rect dst, Paint paint)方法
這個方法我看了很久,并做了一些測試,終于弄明白了。
這個方法可以用來剪輯一張圖片的一部分,即當我們把一組圖片做成一張時,我們可以用此方法來剪輯出單個圖片。
bitmap的默認坐標是0,0.我們可以在此基礎上剪圖片。矩形src為我們所剪輯的圖片的包圍框,即你所剪的圖片,如果為空,就是整張圖片。矩形dst容納你所剪的圖片,然后根據此矩形的位置設置圖片的位置。此參數不能為空。當你剪的圖片大小大于dst時,多余的部分將不會顯示。
?
8.設置自己的Mp3為鈴聲
String filePath = MP3的sd卡地址 RingtoneManager.setActualDefaultRingtoneUri(this, RingtoneManager.TYPE_RINGTONE, Uri.parse("file://"+filePath));?
9. 設置背景透明度及其顏色
?轉:
半透明<Button android:background="#e0000000" ... />
透明<Button android:background="#00000000" ... />
顏色和不透明度 (alpha) 值以十六進制表示法表示。任何一種顏色的值范圍都是 0 到 255(00 到 ff)。對于 alpha,00 表示完全透明,ff 表示完全不透明。表達式順序是“aabbggrr”,其中aa=alpha(00 到 ff);bb=blue(00 到 ff);gg=green(00 到 ff);rr=red(00 到 ff)。例如,如果您希望對某疊加層應用不透明度為 50% 的藍色,則應指定以下值:7fff0000
Java代碼?
View v = findViewById(R.id.content);//找到你要設透明背景的layout 的id?
v.getBackground().setAlpha(100);//0~255透明度值 ,0為完全透明,255為不透明
?
?
10. 關于android殺毒軟件的實現及其原理
?
............暫時這幾個,以后會追加。
?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
