綁定帳號登入

Android 台灣中文網

打印 上一主題 下一主題

[求助] 關於bitmap的setpixel問題

[複製連結] 查看: 1129|回覆: 0|好評: 0
跳轉到指定樓層
樓主
ycchen23 | 收聽TA | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
發表於 2015-2-22 15:44

馬上加入Android 台灣中文網,立即免費下載應用遊戲。

您需要 登錄 才可以下載或查看,沒有帳號?註冊

x
各位大大好, 小弟是初學android的初心者
最近在做關於在螢幕上畫pattern,需設定每個pixel的顏色程式碼如下:
但遇到一個問題,就是在高解析度的設備(LG G2; 4.4.2)時會出現xxx has been stop,
似乎是因解析度太高for太久了(在低解析度的設備(tiny4412 ;4.2.2)上不會有問題)
後來我將此function開一個thread去執行也出現一樣問題, 或者另外開service將thread放置在裡面也一樣
不曉得是寫法有誤還是寫法太笨了
希望各位大大可以幫忙推薦方法讓小弟改進
感謝~~~

    public static Bitmap SetPattern()
    {
        Bitmap mBitmap;
        DisplayMetrics dm = new DisplayMetrics();
        DrawActivity.drawactivity.getWindowManager().getDefaultDisplay().getRealMetrics(dm);        
        mBitmap = Bitmap.createBitmap(dm.widthPixels, dm.heightPixels, Bitmap.Config.ARGB_8888);
        
        for(int m=0; m < dm.widthPixels; m++)
        {
                for(int n=0; n < dm.heightPixels; n++)
                {
                        if((m==0) || (m%6==0))
                        {
                                mBitmap.setPixel(m, n, Color.RED);
                        }
                        else
                        {
                            if(m%6==1)    mBitmap.setPixel(m, n, Color.BLACK);  
                            else if(m%6==2)    mBitmap.setPixel(m, n, Color.BLUE);  
                            else if(m%6==3)    mBitmap.setPixel(m, n, Color.BLACK);  
                            else if(m%6==4)    mBitmap.setPixel(m, n, Color.GREEN);  
                            else if(m%6==5)    mBitmap.setPixel(m, n, Color.BLACK);                                     
                        }       
                }       
        }
        return mBitmap;        
    }
「用Android 就來APK.TW」,快來加入粉絲吧!
Android 台灣中文網(APK.TW)
收藏收藏 分享分享 分享專題
用Android 就來Android 台灣中文網(https://apk.tw)
回覆

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 註冊

本版積分規則