android實用代碼

Android實用代碼七段(一)

?

前言

?這里積累了一些不常見確又很實用的代碼,每收集7條更新一次,希望能對大家有用。

?

聲明

  歡迎轉載,但請保留文章原始出處:)?
    博客園:http://www.cnblogs.com

    農民伯伯: http://over140.cnblogs.com ??

?

正文?

1、 精確獲取屏幕尺寸(例如:3.5、4.0、5.0寸屏幕)?

?

public?static?double?getScreenPhysicalSize(Activity?ctx)?{
????????DisplayMetrics?dm?=?new?DisplayMetrics();
????????ctx.getWindowManager().getDefaultDisplay().getMetrics(dm);
????????double?diagonalPixels?=?Math.sqrt(Math.pow(dm.widthPixels,?2)?+?Math.pow(dm.heightPixels,?2));
????????return?diagonalPixels?/?(160?*?dm.density);
????}

? 一般是7寸以上是平板

?

2、 判斷是否是平板(官方用法)

public?static?boolean?isTablet(Context?context)?{
????????return?(context.getResources().getConfiguration().screenLayout?&?Configuration.SCREENLAYOUT_SIZE_MASK)?>=?Configuration.SCREENLAYOUT_SIZE_LARGE;
????}

?

3、 文字根據狀態更改顏色?android:textColor?

<selector?xmlns:android="http://schemas.android.com/apk/res/android">
????<item?android:color="#53c1bd"?android:state_selected="true"/>
????<item?android:color="#53c1bd"?android:state_focused="true"/>
????<item?android:color="#53c1bd"?android:state_pressed="true"/>
????<item?android:color="#777777"/>
</selector>

?? 放在res/color/目錄下

?

4、背景色根據狀態更改顏色 android:backgroup

復制代碼
<selector?xmlns:android="http://schemas.android.com/apk/res/android">

????<item?android:state_selected="true"><shape>

????????????<gradient?android:angle="0"?android:centerColor="#00a59f"?android:endColor="#00a59f"?android:startColor="#00a59f"?/>
????????</shape></item>
????<item?android:state_focused="true"><shape>
????????????<gradient?android:angle="0"?android:centerColor="#00a59f"?android:endColor="#00a59f"?android:startColor="#00a59f"?/>
????????</shape></item>
????<item?android:state_pressed="true"><shape>
????????????<gradient?android:angle="0"?android:centerColor="#00a59f"?android:endColor="#00a59f"?android:startColor="#00a59f"?/>
????????</shape></item>
????<item><shape>
????????????<gradient?android:angle="0"?android:centerColor="#00ff00"?android:endColor="00ff00"?android:startColor="00ff00"?/>
????????</shape></item>

</selector>

復制代碼

? 如果直接給背景色color會報錯。

?

5、 啟動APK的默認Activity

復制代碼
public?static?void?startApkActivity(final?Context?ctx,?String?packageName)?{
????????PackageManager?pm?=?ctx.getPackageManager();
????????PackageInfo?pi;
????????try?{
????????????pi?=?pm.getPackageInfo(packageName,?0);
????????????Intent?intent?=?new?Intent(Intent.ACTION_MAIN,?null);
????????????intent.addCategory(Intent.CATEGORY_LAUNCHER);
????????????intent.setPackage(pi.packageName);

????????????List<ResolveInfo>?apps?=?pm.queryIntentActivities(intent,?0);

????????????ResolveInfo?ri?=?apps.iterator().next();
????????????if?(ri?!=?null)?{
????????????????String?className?=?ri.activityInfo.name;
????????????????intent.setComponent(new?ComponentName(packageName,?className));
????????????????ctx.startActivity(intent);
????????????}
????????}?catch?(NameNotFoundException?e)?{
????????????Log.e("startActivity",?e);
????????}
????}
復制代碼

?

7、計算字寬

?

public?static?float?GetTextWidth(String text,?float?Size)?{
????????TextPaint?FontPaint?=?new?TextPaint();
????????FontPaint.setTextSize(Size);
????????return?FontPaint.measureText(text);
????}

?

?

注意如果設置了textStyle,還需要進一步設置TextPaint。?

?

?

轉載于:https://www.cnblogs.com/pbq-dream/p/5354129.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/396413.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/396413.shtml
英文地址,請注明出處:http://en.pswp.cn/news/396413.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

mysql 全文本檢索的列_排序數據列以檢索MySQL中的最大文本值

為此&#xff0c;您可以將ORDER BY與一些聚合函數right()一起使用。讓我們首先創建一個表-create table DemoTable1487-> (-> StudentCode text-> );使用插入命令在表中插入一些記錄-insert into DemoTable1487 values(560);insert into DemoTable1487 values(789);in…

關于長壽_FreeCodeCamp可以幫助您更長壽

關于長壽by Christopher Phillips克里斯托弗菲利普斯(Christopher Phillips) 免費代碼營可能幫助您長壽 (Free Code Camp Might Help You Live Longer) Since I started my web development journey with Free Code Camp, I’ve felt more awake, more alert, and able to pro…

python世界你好的輸出便攜電源適配器_65W PD輸出,Thinkplus USB-C便攜電源適配器(PA65)開箱評測...

包裝盒底蓋面為紅色&#xff0c;標注了產品的相關參數&#xff1a;型號&#xff1a;PA65&#xff1b;輸入&#xff1a;100V-240V~50/60Hz 1.5A&#xff1b;輸出&#xff1a;5V/3A、9V/3A、12V/3A、15V/3A、20V/3.25A&#xff1b;制造商&#xff1a;南京博蘭得電子科技有限公司&…

歸并排序與逆序對

在刷題的過程中碰到了關于無序序列的逆序對統計的問題。 直接暴力會超時&#xff0c;然后搜索了一下算法&#xff0c;發現可以通過歸并排序的思想來做到這個統計的過程。看代碼的時候&#xff0c;不知道自己的理解力不夠還是不熟悉別人的代碼&#xff0c;反正是看不懂。無奈之下…

c#獲取pdf文件頁數

引用命名空間&#xff1a;using iTextSharp.text.pdf; string filePath Server.MapPath("/upload/123.pdf"); //文件的物理路徑PdfReader reader new PdfReader(filePath);int iPageNum reader.NumberOfPages; //文件頁數reader.Close();Response.Write("文件…

VS2015 Cordova Ionic移動開發(五)

一、創建側邊菜單和導航項目 1.使用VS創建一個Ionic空項目&#xff0c;同時創建一個Ionic SideMenu和Ionic Tabs項目。將SideMenu和Tabs項目里的templates和js文件合并到空項目里&#xff0c;修改js對應的代碼即可。完整項目工程如下&#xff1a; 2.App.js代碼修改如下&#xf…

最佳適應算法和最壞適應算法_算法:好,壞和丑陋

最佳適應算法和最壞適應算法by Evaristo Caraballo通過Evaristo Caraballo 算法&#xff1a;好&#xff0c;壞和丑陋 (Algorithms: The Good, The Bad and The Ugly) Who has been in Free Code Camp without having the experience of spending hours trying to solve Algori…

mysql條件觸發器實例_mysql觸發器實例一則

例子&#xff0c;實例學習mysql觸發器的用法。一&#xff0c;準備二張測試表&#xff1a;1&#xff0c;測試表1復制代碼 代碼示例:DROP TABLE IF EXISTS test;CREATE TABLE test (id bigint(11) unsigned NOT NULL AUTO_INCREMENT,name varchar(100) NOT NUL…

阿里大數據神預測 勝率僅5.9%中國卻1:0勝韓國

寫在最前面&#xff1a;這是早晨偶然看到的一篇文章&#xff0c;是對昨天中國卻1&#xff1a;0勝韓國的評論。有朋友感慨&#xff1a;努力不放棄的時候&#xff0c;全世界都會幫你。這篇內容很全面的串起阿里巴巴在大數據預測方面的動作&#xff0c;角度很別致&#xff0c;分享…

Python中類、對象與self詳解

先介紹一下python中的類與對象/實例。然后詳細說明self。說明&#xff1a;對象等同實例&#xff0c;本文稱呼不一致時請自行統一 【一】類與對象/實例 1、類 &#xff08;1&#xff09;類由名稱、屬性、方法三部分組成 &#xff08;2&#xff09;類是抽象模板&#xff0c;比如學…

面試題28 字符串排列

題目描述 輸入一個字符串,按字典序打印出該字符串中字符的所有排列。例如輸入字符串abc,則打印出由字符a,b,c所能排列出來的所有字符串abc,acb,bac,bca,cab和cba。 結果請按字母順序輸出。 輸入描述: 輸入一個字符串,長度不超過9(可能有字符重復),字符只包括大小寫字母。 1 cla…

javascript 框架_克服JavaScript框架疲勞

javascript 框架by Tero Parviainen通過Tero Parviainen 克服JavaScript框架疲勞 (Overcoming JavaScript Framework Fatigue) The JavaScript community is suffering from a wave of framework fatigue. It’s caused by the massive outpouring of new frameworks, techniq…

java開發環境:還在配classpath?你out啦!

2019獨角獸企業重金招聘Python工程師標準>>> 先說結論&#xff1a;只需要配置JAVA_HOME和path路徑即可&#xff0c;無需配置classpath 參考Oracle官網的說明&#xff1a; The class path tells JDK tools and applications where to find third-party and user-defi…

qpython3可以調用哪些庫_Python3 如何使用asyncio庫在調用第三方模塊(存在IO等待)的情況下實現協程?...

問題描述demo中有一個 task_check 的模塊,底層是用urllib實現,請問如果要實現使用 asyncio 庫實現協程操作,需要修改這個模塊的底層代碼嗎?如何修改? 往大佬指點問題出現的環境背景及自己嘗試過哪些方法平時都是使用 gevent 庫和 monkey.patch_all() 實現協程,但發現 gevent …

.Net Core 商城微服務項目系列(二):使用Ocelot + Consul構建具備服務注冊和發現功能的網關...

1.服務注冊 在上一篇的鑒權和登錄服務中分別通過NuGet引用Consul這個包&#xff0c;同時新增AppBuilderExtensions類&#xff1a; public static class AppBuilderExtensions{public static IApplicationBuilder RegisterConsul(this IApplicationBuilder app,IApplicationLife…

java打印數組_Java中打印數組內容的方式有哪些?

下面是幾種常見的打印方式。方法一&#xff1a;使用循環打印。public class Demo {public static void main(String[] args) {String[] infos new String[] {"Java", "Android", "C/C", "Kotlin"};StringBuffer strBuffer new Strin…

$(function() {})

$(function() {});是$(document).ready(function(){ })的簡寫&#xff0c; 最早接觸的時候也說$(document).ready(function(){ })這個函數是用來取代頁面中的window.onload; 用來在DOM加載完成之后執行一系列預先定義好的函數。

恢復工具

EasyRecovery http://www.upantool.com/hfxf/huifu/2011/EasyRecovery_V6.22.html轉載于:https://www.cnblogs.com/cb168/p/5359133.html

四參數坐標轉換c++_GPSRTK坐標轉換及四參數、七參數適用條件

工程測量儀器已由經緯儀、全站儀過渡到GNSS(全球衛星導航系統)&#xff0c;特別是公路行業&#xff0c;GPS-RTK作為GNSS的一種應用目前已十分普及。現階段GPS-RTK以WGS-84 坐標系統為主流&#xff0c;所發布的星歷參數也是基于此坐標系統&#xff0c;但隨著北斗導航系統的逐步完…

教主的魔法

傳送門 這道題序列很長&#xff0c;但是操作數很少&#xff0c;然后也沒想到什么好的數據結構來維護&#xff0c;那就分塊吧。 感覺維護的過程很好想&#xff0c;修改的時候對于整個塊都在內的直接打標記&#xff0c;兩個零散的區間暴力重構&#xff0c;重新排序。查詢的時候&a…