首页 > 编程知识 正文

activity的状态之间是可以相互转换的,activity的跳转方式

时间:2023-05-04 21:18:26 阅读:206719 作者:4174

目录

检测某应用是否安装

判断程序是否在前台运行

字符串非空判断

是否为当前界面

Android Studio在SVN上创建分支


其他内容不变,只需要修改AndroidManifest.xml 中Activity注册是添加android:theme="@android:style/Theme.Holo.Dialog" 即可

<activity android:name=".activity.LoginActivity" android:configChanges="keyboard|keyboardHidden|screenLayout|screenSize|orientation" android:theme="@style/dialog_style" />

style :dialog_style

<style name="dialog_style"> <item name="android:windowIsFloating">true</item> <!--是否悬浮在activity上--> <item name="android:windowNoTitle">true</item> <!--透明是否--> <item name="windowActionBar">false</item> <item name="android:windowFrame">@null</item> <item name="windowNoTitle">true</item> <item name="android:windowBackground">@android:color/transparent</item> <item name="android:backgroundDimEnabled">true</item> <item name="android:windowFullscreen">true</item> <item name="android:adjustViewBounds">true</item> <item name="android:backgroundDimAmount">0.4</item><!--透明度 0.0f到1.0f之间。1.0完全不透明,0.0f完全透明--> <item name="android:windowCloseOnTouchOutside">false</item><!--禁用点击空白处自动关闭--></style>

边用边更新

/** * 判断qq是否可用 * * @param context * @return */public static boolean isQQClientAvailable(Context context) { try { final PackageManager packageManager = context.getPackageManager(); List<PackageInfo> pinfo = packageManager.getInstalledPackages(0); if (pinfo != null) { for (int i = 0; i < pinfo.size(); i++) { String pn = pinfo.get(i).packageName; if (pn.equals("com.tencent.mobileqq")) { return true; } } } }catch (Exception e){ return false; } return false;}/** * 判断支付宝是否可用 * @param context * @return */public static boolean checkAliPayInstalled(Context context) { Uri uri = Uri.parse("alipays://platformapi/startApp"); Intent intent = new Intent(Intent.ACTION_VIEW, uri); ComponentName componentName = intent.resolveActivity(context.getPackageManager()); return componentName != null;} 检测某应用是否安装 private boolean isAvilible( Context context, String packageName ){ final PackageManager packageManager = context.getPackageManager(); // 获取所有已安装程序的包信息 List<PackageInfo> pinfo = packageManager.getInstalledPackages(0); for ( int i = 0; i < pinfo.size(); i++ ) { if(pinfo.get(i).packageName.equalsIgnoreCase(packageName)) return true; } return false;} 判断程序是否在前台运行 /** * 程序是否在前台运行 * * @return */public boolean isAppOnForeground() { ActivityManager activityManager = (ActivityManager) getApplicationContext().getSystemService(Context.ACTIVITY_SERVICE); String packageName = getApplicationContext().getPackageName(); List<RunningAppProcessInfo> appProcesses = activityManager .getRunningAppProcesses(); if (appProcesses == null) return false; for (RunningAppProcessInfo appProcess : appProcesses) { // The name of the process that this object is associated with. if (appProcess.processName.equals(packageName) && appProcess.importance == RunningAppProcessInfo.IMPORTANCE_FOREGROUND) { return true; } } return false;} 字符串非空判断 public static boolean isNullOrEmpty(String str) { if (str == null) return true; if (str.equals("null")) return true; if (str.equals("[null]")) return true; if (str.isEmpty()) return true; if (str.equals("")) return true; if (str.equals("(null)")) return true; return false; } 是否为当前界面 /** * 是否为当前界面 * @param cls 当前界面 * @return true是当前界面 */private boolean isRunningActivity(Class<?> cls){ ActivityManager activityManager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE); String runningActivity = activityManager.getRunningTasks(1).get(0).topActivity.getClassName(); return cls.getName().equals(runningActivity);}

使用:if (!isRunningActivity(Activity.class)){//你的逻辑}

Android Studio在SVN上创建分支

1、项目右键,SubVersion->Branch or Tag...
2、在弹出的对话框里面,Copy To的菜单下面的Base URL里面选路径,点下面的加号,确定分支的路径,点击OK
3、然后写个注释(comment),点击OK,分支创建完毕。
4、比较的时候,项目右键,SubVersion->Compare With branch...比较合并

 

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。