Android如何實現(xiàn)圖片顯示與屏幕適配-創(chuàng)新互聯(lián)

創(chuàng)新互聯(lián)建站主營洪江網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,app軟件開發(fā)公司,洪江h(huán)5小程序設(shè)計搭建,洪江網(wǎng)站營銷推廣歡迎洪江等地區(qū)企業(yè)咨詢

這篇文章主要介紹Android如何實現(xiàn)圖片顯示與屏幕適配,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

Android 圖片顯示與屏幕適配的問題

在Android開發(fā)中比較頭疼的是Android的分辨率問題,那么這里給大家介紹個萬能辦法,這個辦法的優(yōu)點是可以實現(xiàn)萬能適應(yīng),給開發(fā)和美工設(shè)計提供了依據(jù),但是對開發(fā)來說代碼量也不少,具體辦法:

(1)獲取屏幕的尺寸

WindowManager windowManager = (WindowManager)     getSystemService(Context.WINDOW_SERVICE);
Display d = windowManager.getDefaultDisplay();
mWidth = d.getWidth();mHeight = d.getHeight();
DisplayMetrics dm = getResources().getDisplayMetrics()
mScreenDensity = dm.density;

(2)美工設(shè)計圖的尺寸

uiWidth,uiHeight

(3)獲取縮放比例

float scaleWidth = mWidth / uiWidth;
float scaleHeight = mHeight/ uiHeight;

(4)所有布局的尺寸用代碼實現(xiàn):

public static int getWidthSize(int size) {
        return (int) (size * scaleWidth);
    }

    public static int getHightSize(int size) {
        return (int) (size * scaleHeight);
    }

    public static float getTextSize(int pxSize) {
        return (pxSize * scaleHeight) / mScreenDensity;
    }

    public static void setViewSize(int width, int height, View v) {
        int paramWidth = getWidthSize(width);
        int paramHeight = getHightSize(height);
        ViewGroup.MarginLayoutParams params = (ViewGroup.MarginLayoutParams) v
                .getLayoutParams();
        if (width != INVALID) {
            params.width = paramWidth;
        }
        if (height != INVALID) {
            params.height = paramHeight;
        }
        v.setLayoutParams(params);
    }

    public static void setViewPadding(int left, int top, int right, int bottom,
            View v) {
        left = getWidthSize(left);
        top = getHightSize(top);
        right = getWidthSize(right);
        bottom = getWidthSize(bottom);
        v.setPadding(left, top, right, bottom);
    }

    public static void setViewMargin(int left, int top, int right, int bottom,
            View v) {
        int paramLeft = getWidthSize(left);
        int paramTop = getHightSize(top);
        int paramRight = getWidthSize(right);
        int paramBottom = getHightSize(bottom);
        ViewGroup.MarginLayoutParams params = (ViewGroup.MarginLayoutParams) v
                .getLayoutParams();
        if (left != INVALID) {
            params.leftMargin = paramLeft;
        }
        if (right != INVALID) {
            params.rightMargin = paramRight;
        }
        if (top != INVALID) {
            params.topMargin = paramTop;
        }
        if (bottom != INVALID) {
            params.bottomMargin = paramBottom;
        }
        v.setLayoutParams(params);}

(5)這里是設(shè)置尺寸的代碼:

setViewSize(100, 100, mView);
    setViewMargin(20, 0, 0, 20, mView);
    setViewPadding(10, 10, 10, 10, mView);
    mTextView.setTextSize(getTextSize(30));

由上在設(shè)計效果圖時,可對圖內(nèi)元素進行尺寸標(biāo)注,程序即可實現(xiàn)按比例縮放。

以上是“Android如何實現(xiàn)圖片顯示與屏幕適配”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

新聞名稱:Android如何實現(xiàn)圖片顯示與屏幕適配-創(chuàng)新互聯(lián)
本文路徑:http://muchs.cn/article30/phipo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版服務(wù)器托管、ChatGPT、網(wǎng)站收錄、虛擬主機、云服務(wù)器

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

微信小程序開發(fā)