`
unicorn25
  • 浏览: 67077 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

一些标准的处理代码

 
阅读更多

 

 

1 调节bitmap大小以覆盖指定大小区域

 

 

    static Bitmap generateBitmap(Context context, Bitmap bm, int width, int height) {
        if (bm == null) {
            return bm;
        }
        bm.setDensity(DisplayMetrics.DENSITY_DEVICE);
        
        // This is the final bitmap we want to return.
        // XXX We should get the pixel depth from the system (to match the
        // physical display depth), when there is a way.
        Bitmap newbm = Bitmap.createBitmap(width, height,
                Bitmap.Config.RGB_565);
        newbm.setDensity(DisplayMetrics.DENSITY_DEVICE);
        Canvas c = new Canvas(newbm);
        c.setDensity(DisplayMetrics.DENSITY_DEVICE);
        Rect targetRect = new Rect();
        targetRect.left = targetRect.top = 0;
        targetRect.right = bm.getWidth();
        targetRect.bottom = bm.getHeight();
        
        int deltaw = width - targetRect.right;
        int deltah = height - targetRect.bottom;
        
        if (deltaw > 0 || deltah > 0) {
            // We need to scale up so it covers the entire
            // area.
            float scale = 1.0f;
            if (deltaw > deltah) {
                scale = width / (float)targetRect.right;
            } else {
                scale = height / (float)targetRect.bottom;
            }
            targetRect.right = (int)(targetRect.right*scale);
            targetRect.bottom = (int)(targetRect.bottom*scale);
            deltaw = width - targetRect.right;
            deltah = height - targetRect.bottom;
        }
        
        targetRect.offset(deltaw/2, deltah/2);
        Paint paint = new Paint();
        paint.setFilterBitmap(true);
        paint.setDither(true);
        c.drawBitmap(bm, null, targetRect, paint);
        
        bm.recycle();
        return newbm;
    }

 

 

 

2 把wallpaper设置为大于屏幕宽度(如需要划屏)

 

 

    private void setWallpaperDimension() {
        WallpaperManager wpm = (WallpaperManager)getSystemService(WALLPAPER_SERVICE);

        Display display = getWindowManager().getDefaultDisplay();
        boolean isPortrait = display.getWidth() < display.getHeight();

        final int width = isPortrait ? display.getWidth() : display.getHeight();
        final int height = isPortrait ? display.getHeight() : display.getWidth();
        wpm.suggestDesiredDimensions(width * WALLPAPER_SCREENS_SPAN, height);
    }

 

 

3 屏蔽home键

 

 

    public boolean onKeyDown(int keyCode, KeyEvent event)  {  
      // TODO Auto-generated method stub  
      if(KeyEvent.KEYCODE_HOME==keyCode)  
        Log.i("lds", "HOme") ;
      return super.onKeyDown(keyCode, event);  
    }  
     
    @Override  
    public void onAttachedToWindow() {  
      // TODO Auto-generated method stub  
      this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);     
      super.onAttachedToWindow();  
    } 
 

 

添加权限:

<uses-permission android:name="android.permission.DISABLE_KEYGUARD"></uses-permission>
 

 

 

分享到:
评论

相关推荐

    C标准库源代码.

    此外,对C标准库的源代码进行分析和研究,也有助于培养对内存管理、错误处理和性能优化等核心编程技能的理解。 总的来说,C标准库源代码是C程序员的宝贵资源,它揭示了C语言底层工作的细节,并为开发者提供了丰富的...

    C++标准库代码

    这个压缩包包含了C++标准库的源代码,对于学习者来说,是一个深入了解C++内部机制和编程实践的宝贵资源。 C++标准库分为几个主要部分: 1. **IO流库**:包括`&lt;iostream&gt;`,`&lt;fstream&gt;`,`&lt;sstream&gt;`等头文件,提供...

    UG出MACH3 G代码后处理文件

    3. **后处理**:后处理是CAM流程的一部分,它将UG生成的标准G代码转换为适合MACH3系统运行的格式。后处理文件(通常为.TCL或.PTP文件)包含了一系列指令,用于解释和转换G代码,使其符合特定机床硬件和控制器的要求...

    C 标准库 源代码

    《C标准库源代码》是编程领域中一份重要的学习资源,它揭示了C语言标准库背后的实现细节。标准库是C语言程序开发的基础,提供了大量的功能函数,如输入/输出操作、内存管理、字符串处理、数学计算等。这份源代码是由...

    CISQ代码质量度量标准

    《CISQ代码质量度量标准》是软件质量协会推出的一套权威的代码质量衡量体系,旨在提升软件的可靠性和可维护性,优化性能效率,保障安全性。这一标准分为四个核心方面,每一方面都对软件开发过程中的不同维度进行了...

    C和C++标准库源代码

    标准库中的源代码对于深入理解这些语言的工作原理至关重要,因为它们展示了如何实现常用的数据结构、算法以及I/O操作。下面将详细讨论C和C++标准库中的关键知识点,并结合源代码来探讨其设计思想。 C标准库: 1. *...

    商家支付宝接口文档及其代码实例实物标准代码实例php版本

    在本文中,我们将深入探讨"商家支付宝接口文档及其代码实例实物标准代码实例php版本"这一主题,这是一份专门针对商家使用支付宝API进行支付集成的重要参考资料。这份资源包含了一个详细的接口文档和PHP代码实例,...

    C标准库函数源代码

    源代码会揭示如何解析格式字符串,处理不同类型的数据,并与标准输入/输出流交互。 3. **字符串处理函数**:如`strcpy()`、`strcat()`、`strcmp()`、`strlen()`等,它们用于复制、连接、比较和获取字符串长度。源...

    C++标准库源代码

    C++标准库是C++编程语言的核心组成部分,它提供了丰富的功能,包括容器、算法、迭代器、函数对象、智能指针、输入/输出流、异常处理等。这些库的源代码对于深入理解C++的工作原理、优化代码以及学习高级编程技巧至关...

    C标准源代码 C函数库

    标题“C标准源代码 C函数库”暗示了我们将探讨C语言标准库的源代码。C标准库由ISO/IEC 9899定义,包括了诸多头文件,如、、等,每个头文件代表一类功能。通过查看源代码,我们可以深入了解这些函数的工作原理,这...

    标准化降水指数spi的matlab代码

    代码可能涉及的数据处理函数有`cumsum`(累积求和)、`fitdist`(分布拟合)、`makedist`(创建概率分布对象)、`cdf`(累积分布函数)和`norminv`(标准正态分布逆函数)等。具体实现可能会根据数据的特性和需求...

    C标准库源代码(很全)

    通过分析这些源代码,我们可以看到如何实现标准库中定义的功能,比如`printf`内部是如何处理格式化的,`malloc`是如何管理内存的,以及`strcat`是如何合并字符串的。此外,源代码也可能包含了一些测试用例,帮助我们...

    C标准库源代码 很全

    这个压缩包包含的“C标准库源代码”是C语言爱好者和开发者宝贵的参考资料,可以深入理解这些基础功能的实现原理。 C标准库基于ISO/IEC 9899:2011标准,包含了大量用于输入/输出、内存管理、字符串处理、数学计算等...

    Delphi 程序员代码编写标准指南.rar_Delphi程序_delphi代码

    4. **错误处理**:良好的代码应该包含合理的错误处理机制,如异常处理和错误返回,以确保程序在遇到问题时能够优雅地失败并提供反馈。 5. **资源管理**:Delphi中涉及内存管理和数据库连接等资源的使用,需要遵循...

    图像处理C++代码很全面哦

    本资源包“图像处理C++代码很全面哦”显然包含了一系列与图像处理相关的C++源代码,涵盖了一些核心的算法和技术,如Hough变换和小波变换。 Hough变换是一种用于检测图像中直线、圆、椭圆等几何形状的算法。在C++中...

    表面处理代码.pdf

    总结来说,《表面处理代码》是公司内部质量控制的关键文档,它定义了表面处理的编码系统,明确了不同代码所代表的工艺步骤和质量要求,确保了产品制造过程的标准化和规范化。通过遵循这些规则,可以保证产品的表面...

    C语言标准库源代码.zip

    在"标题"中提到的"C语言标准库源代码.zip"压缩包,包含了C语言中一些常用标准库函数的源码,这对于学习C语言的底层工作原理和深入理解编程概念非常有帮助。 "描述"中提到了几个关键的函数:printf、sprintf、scanf...

    经典数字信号处理的C代码程序集

    《经典数字信号处理的C代码程序集》是一个包含多种数字信号处理算法的资源包,主要针对初学者设计,便于理解和实践。在这个集合中,你将找到标准的C语言实现,涵盖了从基本概念到复杂应用的各种算法。以下是这些知识...

    C标准库源代码C标准库源代码

    C标准库源代码的分析可以帮助我们理解这些函数的实现细节,比如I/O操作的缓冲机制、内存分配的策略以及错误处理的方法。此外,通过查看源代码,还能学习到如何有效地编写低级程序,例如避免内存泄漏、提高代码效率等...

    高等学校管理信息标准-代码标准集

    《高等学校管理信息标准—代码标准集》是一套旨在规范高等教育领域信息处理与交换的标准文档,其核心目的是通过统一的信息编码体系来提升高校间以及高校与外部机构之间数据交流的效率与准确性。该标准集主要涉及对...

Global site tag (gtag.js) - Google Analytics