編輯:關於Android編程
/**
* 判斷某一個類是否存在任務棧裡面
* @return
*/
private boolean isExsitMianActivity(Class cls){
Intent intent = new Intent(this, cls);
ComponentName cmpName = intent.resolveActivity(getPackageManager());
boolean flag = false;
if (cmpName != null) { // 說明系統中存在這個activity
ActivityManager am = (ActivityManager) getSystemService(ACTIVITY_SERVICE);
List taskInfoList = am.getRunningTasks(10);
for (RunningTaskInfo taskInfo : taskInfoList) {
if (taskInfo.baseActivity.equals(cmpName)) { // 說明它已經啟動了
flag = true;
break; //跳出循環,優化效率
}
}
}
return flag;
}
/**
* 進行邏輯處理
*/
public void dealWithIntent(){
if(isExsitMianActivity(MainActivity.class)){//存在這個類
//進行操作
}else{//不存在這個類
//進行操作
}
}
public boolean checkApplication(String packageName) {
if (packageName == null || .equals(packageName)){
return false;
}
try {
ApplicationInfo info = getPackageManager().getApplicationInfo(packageName, PackageManager.GET_UNINSTALLED_PACKAGES);
return true;
} catch (NameNotFoundException e) {
return false;
}
}
二、判斷Activity是否存在
Intent intent = new Intent(); intent.setClassName(包名, 類名);
方法一:
if (getPackageManager().resolveActivity(intent, 0) == null) {
// 說明系統中不存在這個activity
}
方法二:
if(intent.resolveActivity(getPackageManager()) == null) {
// 說明系統中不存在這個activity
}
方法三:
Listlist = getPackageManager().queryIntentActivities(intent, 0); if (list.size() == 0) { // 說明系統中不存在這個activity }
一起學android之利用回調函數onCreateDialog實現加載對話框
效果圖: 有時候我們需要去做一個Activity啟動時的數據加載對話框,關於對話框的各種實現可以通過一起學android之對話框 Dial
Android仿iPhone的日期時間選擇器
先看效果圖 如何使用 import java.text.DateFormat; import java.text.ParseException; import jav
Android仿微信圖片點擊浏覽的效果
本篇我們來做一個類似於微信的圖片點擊浏覽的效果,點擊小圖圖片後會放大至全屏顯示,且中間有一個2D平滑過渡的效果。 思路如下: 首先,從圖片縮略界面跳轉到圖片詳情頁面,應該
Android下屏幕適配
適配:即當前應用在相同的手機上面顯示相同的效果。適配前需要首先確定當前手機所屬像素密度類型(如:xhdpi、hdpi、mdpi等),然後計算其像素密度,按一定比例給出界面